我有一個TextView,我想要應用一個我用於所有TextView元素的Style以及另一個我只在特定Activity中使用的樣式。有沒有可能做到這一點?如何將兩種不同的樣式應用於android中的一個元素?
回答
Android下的風格可以有父風格。
所以只需要MyActivityTextView
將GeneralTextView
定義爲父類型,並更改/添加樣式屬性。
然後,您可以使用MyActivityTextView
獲取某些視圖,GeneralTextView
可以使用其他視圖。
它在Defining Styles中描述。
您可以在style.xml與其他擴展一個風格:
<style name="current_weekday_white" parent="current_day_white">
<item name="android:textColor">#FFABAB</item>
</style>
嘿在那裏我已經嘗試過與文本視圖,但只有第一種風格的作品,而不是擴展之一。任何線索? – 2014-11-22 04:30:03
只是一小塊的信息可能會添加到問題的整體價值 - 從耍賴複製:http://developer.android.com/guide/topics/ui/themes.html#DefiningStyles
如果您想從您自己定義的樣式繼承,則不必使用父屬性。相反,只需將要繼承的樣式的名稱添加到新樣式的名稱中,並用句點分隔。例如,創建一個新的風格,繼承了上述定義的CodeFont風格,但使紅色,你可以創作新的風格是這樣的:
<style name="CodeFont.Red">
<item name="android:textColor">#FF0000</item>
</style>
注意,沒有在標籤沒有父屬性,但由於name屬性以CodeFont樣式名稱開頭(這是您創建的樣式),因此此樣式將繼承該樣式的所有樣式屬性。該樣式將覆蓋android:textColor屬性以使文本變爲紅色。你可以引用這個新風格爲@ style/CodeFont.Red。
通過鏈接名稱和句點,您可以繼續像這樣繼續多次。例如,您可以將CodeFont.Red擴展爲更大,使用:
<style name="CodeFont.Red.Big">
<item name="android:textSize">30sp</item>
</style>
- 1. 如何將不同的CSS樣式應用於子元素?
- 2. 如何將兩個不同的樣式屬性應用於不同位置的相同元素?
- 3. 將兩種不同的字體樣式應用於TextView
- 4. 如何將多個XAML樣式應用於一個元素?
- 5. 如何將兩種以上的樣式應用於wpf中的一個控件?
- 6. 將樣式應用於中繼器中的第一個元素
- 7. 將樣式應用於多個元素
- 8. 如何將樣式應用於特定的一系列元素
- 9. 如何將多個樣式應用於ckeditor中的一個元素?
- 10. apache poi將一種樣式應用於不同的工作簿
- 11. 如何將':hover'元素樣式應用於':: after'元素?
- 12. 如何將樣式應用於kendo下拉列表中的一個元素?
- 13. 將不同的樣式表應用於模板的不同元素
- 14. 將CSS樣式應用於右側的最後一個元素?
- 15. 如何將兩個動畫同時應用於同一個元素?
- 16. 如何將兩種不同的樣式合併到一個xaml中?
- 17. 如何手動將特定樣式表中的樣式應用於元素?
- 18. 如何不將樣式應用於表格元素
- 19. 如何將樣式應用於帶有前綴ID的元素?
- 20. jQuery僅將樣式應用於第一個元素
- 21. 將樣式表應用於一個元素
- 22. WPF樣式不應用於Border元素
- 23. 將樣式應用於特定元素不適用於Safari
- 24. 如何將類或樣式應用於IE中的某個HTML元素?
- 25. 如何創建一個JComboBox,其元素每個都有兩種不同的樣式?
- 26. 的樣式同一div兩種略有不同的方式
- 27. 如何在CK編輯器中將多個元素應用於單個樣式
- 28. 僅將樣式應用於選定的元素,而不影響兒童元素
- 29. 如何將樣式應用於Bootstrap React元素?
- 30. 如何將自定義樣式僅應用於特定元素?
哦,我明白了。太好了,非常感謝。還有一個問題:子樣式是否也可以覆蓋父屬性? – Bruiser 2011-01-31 13:27:48
是的,它可以覆蓋父屬性。 – 2011-01-31 13:31:00