材料主题命名约定

时间:2016-02-29 20:28:16

标签: android material-design

Android Studio的内置模板之一将创建以下主题:

<resources>

    <!-- Base App Theme -->
    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>

    <style name="AppTheme.NoActionBar">
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
    </style>

    <style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />

    <style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />

</resources>

在这种情况下,AppTheme.NoActionBar未明确指定AppTheme作为父级。 Android是否为此使用命名约定并在这种情况下隐式继承主题?

1 个答案:

答案 0 :(得分:0)

感谢David指点我的文档:

如果要继承自己定义的样式,则不必使用parent属性。 相反,只需将要继承的样式的名称添加到新样式的名称前面,用句点分隔。例如,创建一个继承上面定义的CodeFont样式的新样式,但是使颜色变红,你可以创作这样的新风格:

<style name="CodeFont.Red">
    <item name="android:textColor">#FF0000</item>
</style>