我想要什么?我想使ActionBar颜色可自定义,用户可以从颜色列表中选择颜色,ActionBar颜色将更改为其选定的颜色。
我做了什么?我有一个名为SettingsActivity的类,我从中选择颜色。他们选择的颜色存储在SharedPreferences中。选择的颜色用户将存储在SharedPreferences中,然后我通过意图重新启动应用程序,颜色发生变化。一切都在发挥作用。
但是每当我在一小段时间内启动应用程序时,应用程序会在values v-14文件夹中显示styles.xml中的默认颜色,然后颜色更改为用户选择的颜色,这是一个问题。我怎样才能消除这个错误?
我还附上了styles.xml的代码。如果需要任何其他细节或代码,那么请告诉我我也会提供,我正在使用导航抽屉碎片。
<resources>
<!--
Base application theme for API 14+. This theme completely replaces
AppBaseTheme from BOTH res/values/styles.xml and
res/values-v11/styles.xml on API 14+ devices.
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar">
API 14 theme customizations can go here.
</style>
-->
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
<item name="android:actionBarStyle">@style/MyActionBar</item>
</style>
<style name="MyActionBar" parent="@android:style/Widget.Holo.Light.ActionBar">
<item name="android:background">#f39c12</item>
</style>
</resources>
答案 0 :(得分:1)
将此用于更改操作栏颜色:_
ActionBar bar = getActionBar();
bar.setBackgroundDrawable(new ColorDrawable("COLOR"));
或使用此
ColorDrawable colorDrawable = new ColorDrawable(Color.parseColor("#ffFEBB31"));
actionBar.setBackgroundDrawable(colorDrawable);
由于