2012-03-18 60 views

回答

11

Id是你的xml組件的id [可以是像textview,edittext ...或viewgroup之類的視圖,如linearlayout,relativelayout ...或其他任何在XML只是你可以這樣

(R.id.「在XML視圖的ID」)

,但首先你應該使用的setContentView(R.layout獲得在Java代碼中引用它們。「你的項目中layout/res中的xml文件的名稱」) 這個xml文件,你想使用它的組件。通過說字符串TAG = yourclassname.class.getsimpleName();當我想在logcat中顯示消息時[使用eclipse中的工具,您可以在運行時看到您的應用消息]]使用TAG。

並在Log.d中使用它(TAG,「任何字符串在這裏」+我的班級中的一些變量,我想知道它在應用程序運行時的特定時間的值);

我希望我明確告訴你。

+0

非常感謝。我已經開始瞭解它。 – 2012-07-25 16:03:04

+0

爲什麼你必須使用TAG這個詞?爲什麼不能使用其他名字? – Chaine 2017-06-08 10:42:42

+0

@Chaine這只是一個約定 – Blablablabli 2017-09-18 12:20:25

3

tutorials開始。 (如果你絕對是初學者,那麼你還沒有設置開發環境,那麼從Installing the SDK開始。)

當您在Android中使用控制檯日誌功能時,日誌記錄方法的第一個參數是標籤,可用於過濾logcat輸出。一個典型的編程風格是:

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

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

這就是TAG所在。

本教程介紹了資源ID。當您使用XML定義資源時,Android會爲不同種類的資源(R.id,R.string,R.layout等)生成一個名爲R的類和嵌套類。每個嵌套類對於該類型的每個資源都有一個常量。 R.id.webbutton可能是由具有屬性android:id="@+id/webbutton"的按鈕的佈局文件生成的。這些在教程中都有解釋。

+0

我正在閱讀教程,但我仍然覺得很難理解它的全部內容。我知道這些教程可能是最好的,但我認爲我需要再花幾個星期的時間才能完成所有這些教程。非常感謝。 – 2012-07-25 16:04:41

+0

一個標籤可以應用於setTag和getTag的對象 – matthewlent 2016-11-12 17:17:51

+0

@matthewlent - 是的,但這幾乎肯定不同於在代碼中遇到OP時混淆OP的TAG(全部大寫)。當顯示任何正在記錄的東西時,大量的Android示例代碼使用'TAG'字符串常量。 – 2016-11-13 01:10:36

43

IDs and Tags

標識

意見可能有與它們相關聯的整數ID。這些ID通常是在佈局XML文件中分配的 ,用於在視圖樹中查找 特定視圖。常見模式是:

在佈局文件中定義一個按鈕併爲其分配唯一的ID。

<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); 

查看標識不必在整個樹唯一的,但它是很好的做法 以確保他們至少獨特的 您正在搜索的樹以內的部分。

標籤

與標識,標籤不用於識別的看法。標籤基本上是 可以與視圖關聯的額外信息。他們 是最常用的方式來存儲與視圖相關的數據,而不是將它們放入單獨的 結構中。

標籤可以與字符的序列值在佈局XML被指定爲使用的Android一個單一的標記:標記屬性或多個標籤使用子元素:

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

標籤還可以與從任意的對象指定代碼使用setTag(Object)setTag(int, Object)

+0

感謝您的鏈接。它解釋了我的大部分疑問。 – 2012-07-25 16:05:50