将android:text设置为@ + id / xyz的含义

时间:2014-04-08 05:33:11

标签: android android-layout

将布局xml文件中视图的android:text属性设置为@+id/xyz之类的含义是什么意思。可以在https://github.com/freezy/android-xbmcremote/blob/master/res/layout/actor_item.xml

找到一个示例

此处复制相关代码:

    <TextView 
        android:text="@+id/actor_name" 
        android:id="@+id/actor_name" 
        android:textColor="#ffffff"
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" />
    <TextView 
        android:text="@+id/actor_role" 
        android:id="@+id/actor_role" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" />

4 个答案:

答案 0 :(得分:1)

这没有多大意义。根据{{​​3}},您分配给android:text的内容必须是字符串值:

  

必须是字符串值,使用\\;转义\\n\\uxxxx等字符作为unicode字符。

     

这也可能是对包含值的资源(格式为“@ [package:] type:name”)或主题属性(格式为“?[package:] [type:] name”)的引用这种类型。

@id的值是整数。

答案 1 :(得分:1)

&#34; @ + D / I D&#34;表示您为textview提供了唯一的名称或ID,这有助于确定textviewandroid:text就像textview的身体一样,您可以提供您想要的任何内容显示。

答案 2 :(得分:0)

&#34;机器人:文本&#34;需要将String设置为它。它是将出现在TextView中的文本。

您可以使用普通字符串或使用@string从res / values / strings.xml中提取字符串

<TextView 
    android:text="@string/actor_name" 
    android:id="@+id/actor_name" 
    android:textColor="#ffffff"
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" />

&#34; @ + D / I D&#34;是一种告诉android框架创建id的动作。加号+表示这是一个新的资源ID,如果不存在则会创建。

答案 3 :(得分:0)

请访问http://developer.android.com/guide/topics/ui/declaring-layout.html#id

加号(+)只表示如果目前不存在,则应创建该ID。

一般的做法是在布局中定义新的View时使用@ + id / something,然后使用@id / something从布局的另一部分引用View(例如,在任何RelativeLayout中)或R.id.something从我们的java代码中引用它。