3
讓我們先從一個例子意義
<attr name="spinnerDropDownItemStyle" format="reference" />
如何利用這個拆開,明白了嗎?
我看了Android themes & styles demystified - Google I/O 2016多次談話,我仍然不明白這個參考工具是如何工作的。
讓我們先從一個例子意義
<attr name="spinnerDropDownItemStyle" format="reference" />
如何利用這個拆開,明白了嗎?
我看了Android themes & styles demystified - Google I/O 2016多次談話,我仍然不明白這個參考工具是如何工作的。
reference
當屬性引用另一個資源ID時使用格式。例如,以下屬性可以用來像:
<!-- Declaration -->
<attr name="mydrawale" format="reference" />
<!-- Usage -->
app:mydrawable="@drawable/shape1"
所以,資源等@layout/...
,@color/...
,@style/...
是reference
類型。
然而屬性格式,如color
,boolean
等需要彩色文字(例如0x00FF00
)和分別布爾文字(例如true
)。
在你的情況下,spinnerDropDownItemStyle
是一個屬性,獲取像@style/...
這樣的資源,它本身是一個指向類型style的資源項的指針。
順便說一下,您可以使用|
將格式設置爲多種類型。例如,對於以下屬性,@color/mycolor
和0x00FF00
均可接受。
<attr name="mycolor" format="reference|color" />
感謝您的解釋。它有助於一些。 +1。您是否有可能幫我深入研究這個例子,並將其轉化爲他們使用的實際風格?我只想看到我的案例的完整示例,也許整個事情最終會點擊。根據談話的情況,當你深入鑽研時,似乎會出現某種面向對象的惡作劇。我可以從你的例子中看到很多東西,但比較深入地參考引用的「風格」會有所幫助。 –
@NouvelTravay這是一個獲取樣式ID的屬性(例如'@ style/mystyle')。此ID可以稍後用於設置下拉項目的風格。 –