2012-03-18 24 views
13

Tôi biết cách báo cáo chuyển đổi hoạt động nhưng tôi không biết điều này có nghĩa là gì (R.id.webbutton). Bất cứ ai có thể vui lòng giải thích nó là gì và TAG cũng là gì? Có hướng dẫn nào cho người mới bắt đầu không? Tôi có nghĩa là người mới bắt đầu tuyệt đối."Thẻ" và "id" trên Bố cục là gì?

+3

Suy nghĩ trong java vol 1 – Blackbelt

Trả lời

11

Id là id của các thành phần xml của bạn [có thể là chế độ xem như textview, edittext ... hoặc viewgroup như linearlayout, relativelayout ...hoặc bất cứ điều gì khác] trong xml chỉ đơn giản là bạn có thể nhận được viện dẫn đến chúng trong mã java bằng cách nói

(R.id. "id của tầm nhìn của bạn trong xml")

nhưng trước hết bạn nên sử dụng setContentView (R.layout "Tên của tệp xml trong bố trí/res trong dự án của bạn") tệp xml này mà bạn muốn sử dụng thành phần của nó.

TAG tôi sử dụng nó khi tôi muốn hiển thị thông báo trong logcat [công cụ trong nhật thực bạn có thể xem tin nhắn ứng dụng của bạn khi nó đang chạy] bằng cách nói chuỗi TAG = yourclassname.class.getsimpleName();

và sử dụng nó trong Log.d (TAG, "bất kỳ chuỗi nào ở đây" + một số biến trong lớp của tôi tôi muốn biết giá trị của nó trong một thời điểm cụ thể khi ứng dụng đang chạy);

tôi hy vọng rằng tôi đã nói rõ với bạn.

+0

Có cảm ơn rất nhiều. Tôi đã bắt đầu hiểu nó. –

+0

tại sao bạn phải sử dụng từ TAG? tại sao bạn không thể sử dụng tên khác? – Chaine

+0

@Chaine nó chỉ là một quy ước – Blablablabli

3

Bắt đầu với số tutorials. (Nếu bạn hoàn toàn là người mới bắt đầu chưa có môi trường phát triển, hãy bắt đầu với Installing the SDK.)

Khi bạn sử dụng cơ sở nhật ký bàn điều khiển trong Android, đối số đầu tiên cho phương pháp ghi nhật ký là có thể được sử dụng để lọc đầu ra của logcat. Kiểu lập trình thông thường là:

public class Something { 
    private static final String TAG = "Something"; 

    public void aMethod() { 
     Log.i(TAG, "Entered aMethod"); 
    } 
    . . . 
} 

Đó là những gì TAG là.

ID tài nguyên được giải thích trong hướng dẫn. Khi bạn xác định tài nguyên trong XML, Android sẽ tạo một lớp có tên là R với các lớp lồng nhau cho các loại tài nguyên khác nhau (R.id, R.string, R.layout, v.v.). Mỗi lớp lồng nhau có một hằng số cho mỗi tài nguyên thuộc loại đó. R.id.webbutton có thể được tạo từ tệp bố cục có nút có thuộc tính android:id="@+id/webbutton". Điều này là tất cả được giải thích trong các hướng dẫn.

+0

Tôi đang đọc các hướng dẫn nhưng tôi vẫn thấy rất khó hiểu tất cả. Tôi biết những hướng dẫn có lẽ là tốt nhất có sẵn nhưng tôi nghĩ rằng tôi cần một vài tuần nữa để đi thorugh tất cả chúng. Cảm ơn rất nhiều. –

+0

thẻ có thể được áp dụng cho đối tượng có setTag và getTag – matthewlent

+0

@matthewlent - Có, nhưng điều đó gần như chắc chắn khác với 'TAG' (tất cả chữ hoa) bị nhầm lẫn OP khi nó gặp phải trong mã. Một số lượng lớn mẫu mã Android sử dụng hằng số chuỗi 'TAG' khi nó hiển thị mọi thứ đang ghi nhật ký. –

43

IDs and Tags

ID

xem có thể có một id số nguyên liên kết với chúng. Các id này là thường được chỉ định trong tệp XML bố cục và được sử dụng để tìm các chế độ xem cụ thể trong cây xem là . Mẫu chung là:

Xác định nút trong tệp bố cục và gán cho nó một ID duy nhất.

<Button 
     android:id="@+id/my_button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="@string/my_button_text"/> 
    From the onCreate method of an Activity, find the Button 

     Button myButton = (Button) findViewById(R.id.my_button); 

Xem ID không cần phải là duy nhất trong suốt cây, nhưng nó là tốt thực hành để đảm bảo rằng chúng ít nhất duy nhất trong một phần của cây bạn đang tìm kiếm.

Thẻ

Không giống như ID, thẻ không được sử dụng để xác định quan điểm. Thẻ về cơ bản là một phần thông tin bổ sung có thể được liên kết với chế độ xem. Chúng thường được sử dụng như một cách thuận tiện để lưu trữ dữ liệu liên quan đến các chế độ xem trong các số lượt xem thay vì đặt chúng trong cấu trúc riêng biệt.

Thẻ có thể được xác định với các giá trị chuỗi ký tự trong cách bố trí XML như hoặc là một thẻ đơn bằng cách sử dụng android: attribute hoặc nhiều thẻ bằng cách sử dụng phần tử con:

<View ... 
     android:tag="@string/mytag_value" /> 
<View ...> 
    <tag android:id="@+id/mytag" 
      android:value="@string/mytag_value" /> 
</View> 

Thẻ cũng có thể được xác định với các đối tượng tùy ý từ mã sử dụng setTag(Object) hoặc setTag(int, Object).

+0

Cảm ơn bạn đã liên kết. Nó giải thích hầu hết những nghi ngờ của tôi. –

Các vấn đề liên quan