我正在创建一个Android服装应用程序,并试图设置它的主要颜色。我创建和设置主题的方式与移动应用程序相同。除主要颜色外,每个属性都会正确更改。它将永远是android使用的默认蓝绿色。我在配套应用程序上使用相同的主题,它在那里工作。是否有一些我缺少的东西穿着不同?有什么东西可以覆盖这个设置吗?
我尝试将父主题更改为material或Compact.app。
Android Manifest:
<application
android:name="com.turndapage.navmedia.App"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.Nav">
styles.xml
<resources>
<style name="Theme.Nav" parent="@android:style/Theme.DeviceDefault">
<!-- your app branding color for the app bar -->
<item name="colorPrimary">@color/primary</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="colorPrimaryDark">@color/primary_dark</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="colorAccent">@color/accent</item>
<item name="android:colorForeground">@color/primary</item>
<item name="android:colorBackground">@color/Viewport_Background</item>
</style>
colors.xml
<resources>
<color name="primary">#8c6354</color>
<color name="Viewport_Background">#4d362e</color>
<color name="primary_dark">#66483d</color>
<color name="Action">#a67563</color>
<color name="accent">#a1887f</color>
<color name="Background_Shaded">#000000</color>
<color name="background">#000000</color>
<color name="digital_text">#ffffff</color>
答案 0 :(得分:0)
您需要使用android:
前缀版本:
<style name="Theme.Nav" parent="@android:style/Theme.DeviceDefault">
<!-- your app branding color for the app bar -->
<item name="android:colorPrimary">@color/primary</item>
<!-- darker variant for the status bar and contextual app bars -->
<item name="android:colorPrimaryDark">@color/primary_dark</item>
<!-- theme UI controls like checkboxes and text fields -->
<item name="android:colorAccent">@color/accent</item>
<item name="android:colorForeground">@color/primary</item>
<item name="android:colorBackground">@color/Viewport_Background</item>
</style>
AppCompat使用非命名空间的验证,Android Wear上不需要或使用它(在Wear设备上Theme.DeviceDefault
扩展Theme.Material
)。
默认情况下,colorPrimary
未在任何曲面中使用,因此您仍然需要通过?android:attr/colorPrimary
手动引用它作为视图的背景。
请注意,您无法按照this post更改流中通知的背景颜色 - 但是,当用户点按通知时,系统会使用notification color(假设您还没有设置内容意图 - 在这些情况下,他们只会进入您的应用程序。)