主題繼承

在定義主題時,通常使用系統提供的主題,然後更改修改外觀以適合他自己的應用程式。例如,這是 Theme.AppCompat 主題的繼承方式:

<style name="AppTheme" parent="Theme.AppCompat">
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

這個主題現在具有標準 Theme.AppCompat 主題的所有屬性,除了我們明確更改的主題。

繼承時還有一個快捷方式,通常在從自己的主題繼承時使用:

<style name="AppTheme.Red">
    <item name="colorAccent">@color/red</item>
</style>

由於它的名字一開始就已經有了 AppTheme.,它會自動繼承它,而不需要定義 parent 主題。當你需要為應用程式的零件(例如,單個活動)建立特定樣式時,這非常有用。