@android:和android之间有什么区别?

时间:2013-05-22 05:30:30

标签: android android-layout android-xml

之间有什么区别
android:color="@android:color/black"

style="?android:attr/borderlessButtonStyle" 

@?之间有什么区别?

这是其中一个不可用的问题,或ogooglebar

3 个答案:

答案 0 :(得分:9)

<强> @android:彩色/黑色

表示您指的是android命名空间中定义的颜色。 该命名空间是框架的命名空间。

在此文件中搜索黑色:black color in framework

style =“?android:attr / borderlessButtonStyle”

“?android:attr / borderlessButtonStyle”只是意味着“使用名称空间android中名为borderlessButtonStyle的属性定义的值”。该属性及其值是Android框架的一部分,即“android”命名空间。

borderlessButtonStyle in framework


来自此Referencing Style Attributes

已修改

此链接告诉我们:

例如,以下是如何引用属性以设置文本颜色以匹配系统主题的“主要”文本颜色:

<EditText id="text"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:textColor="?android:textColorSecondary"
    android:text="@string/hello_world" />

答案 1 :(得分:5)

(来自this回答及其评论)

使用问号前缀ID表示您要访问样式主题中定义的样式属性,而不是按Referencing Style Attributes中的说明对属性进行硬编码。

更具体地说,?意味着额外的间接级别。可以将其视为取消引用主题属性以获取它指向的资源,而不是引用属性本身。你看到这个?android:attr / foo

答案 2 :(得分:1)