2013-05-22 222 views
7

什麼什麼@android之間的區別:和android:

android:color="@android:color/black" 

style="?android:attr/borderlessButtonStyle" 

什麼是@?之間的區別有什麼區別?

這是其中一個不可上網的問題,或ogooglebar

+0

從它的文件[訪問資源(http://developer.android.com/guide/topics/resources/accessing-resources .html):爲了引用一個樣式屬性,名稱語法與普通的資源格式幾乎相同,但是使用問號「(?)」而不是at符號「(@)」,資源類型部分是可選的。 – devnull

+0

這不是一個無法使用的網址.... :) –

+0

這個問題的網址slu is很有趣。 –

回答

5

(從this答案,其意見)

附加了一個問號的ID指示要訪問是在一個風格的主題定義的樣式屬性,而不是硬編碼的屬性,如解釋在Referencing Style Attributes

更具體地說,?意味着額外的間接級別。可以將它視爲取消引用主題屬性以獲取其指向的資源,而不是引用該屬性本身。你看這與Android:ATTR /富

9

@android:彩色/黑白

意味着你是指在Android命名空間中定義的顏色。 這個命名空間是框架的命名空間。

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

風格= 「機器人:ATTR/borderlessButtonStyle」 「?安卓: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

哇,這實際上是正確的,沒有實際回答問題。 – Chloe

+1

檢查我編輯的ans並告訴我什麼是系統主題? –

相關問題