我正在尝试在我的应用中全面更改操作栏的颜色。我发现this answer提示了一种方法。所以我在themes.xml
文件夹下创建了一个res/values
文件,其中包含以下内容:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Theme.MyTheme" parent="Theme.Sherlock.ForceOverFlow">
<item name="actionBarStyle">@style/Widget.MyTheme.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.MyTheme.ActionBar</item>
</style>
<style name="Widget.MyTheme.ActionBar" parent="Widget.Sherlock.ActionBar">
<item name="android:background">#fff4231e</item>
<item name="background">#fff4231e</item>
</style>
</resources>
但是,我在上面的代码中收到错误:
检索项目的父项时出错:找不到与之匹配的资源 名称为'Theme.Sherlock.ForceOverFlow'。
在我的build.gradle中,我有以下内容:
compile 'com.actionbarsherlock:actionbarsherlock:4.4.0@aar'
我正在使用AndroidStudio和Gradle
答案 0 :(得分:1)
ActionBarSherlock版本4.4不包含ForceOverflow主题,它已在4.2中删除。您需要使用旧版本的ABS才能将ForceOverflow用作主题。
根据Change Log:
修复:删除.ForceOverflow主题。这些本来就不应该 包括在内。
如果您实际上不需要ForceOverflow,可以使用Theme.Sherlock
,有关详细信息,请参阅the official page:
<style name="Theme.MyTheme" parent="Theme.Sherlock">
<item name="actionBarStyle">@style/Widget.MyTheme.ActionBar</item>
<item name="android:actionBarStyle">@style/Widget.MyTheme.ActionBar</item>
</style>