样式冲突android actionbarsherlock与首选项

时间:2013-05-06 18:05:11

标签: android android-preferences preferenceactivity

<style name="GCTheme" parent="Theme.Sherlock.Light"> 
    <item name="android:textSize">18sp</item>
    <item name="android:textColor">#FFFFFF</item>
    <item name="actionDropDownStyle">@style/MyDropDown</item>
    <item name="popupMenuStyle">@style/PopupMenu.Example</item>
</style> 

<style name="MyDropDown" parent="Widget.Sherlock.Spinner.DropDown.ActionBar"> 
   <item name="android:popupBackground">#7D7D7D</item>
</style> 

<style name="PopupMenu.Example" parent="@style/Widget.Sherlock.Light.ListPopupWindow">  
    <item name="android:popupBackground">#7D7D7D</item> 
</style>

以下代码为我的操作栏设置样式,使操作栏的标题为白色,操作栏显示为蓝色。我现在面临的问题是,由于我使用的是Theme.Sherlock.Light,因此选项菜单上的设置将无法正常显示。 选项菜单中的设置扩展PreferenceActivity,包含以下代码

protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        addPreferencesFromResource(R.xml.perferences);
    }

这里的主要问题是,操作栏的textColor设置为白色,此页面上显示的背景也是白色,使得文字无法读取...有没有人有想法以便解决这个问题。

我确实尝试使用此代码

View v = new View(this);
v.setBackgroundColor(Color.GRAY);

在设置活动中,但它不起作用。

1 个答案:

答案 0 :(得分:1)

因此,不应使用<item name="android:textColor">#FFFFFF</item>将标题的颜色设置为白色,而应使用此选项:

<style name="Theme.MyApplications" parent="@style/Theme.Sherlock.Light.DarkActionBar">
    <item name="actionBarStyle">@style/ActionBar.Solid</item>
</style>

<style name="ActionBar.Title" parent="TextAppearance.Sherlock.Widget.ActionBar.Title">
    <item name="android:textColor">@android:color/white</item>
</style>

<style name="ActionBar.SubTitle" parent="TextAppearance.Sherlock.Widget.ActionBar.Subtitle">
    <item name="android:textColor">@android:color/white</item>
</style>

<style name="ActionBar.Solid" parent="@style/Widget.Sherlock.Light.ActionBar.Solid">
    <item name="titleTextStyle">@style/ActionBar.Title</item>
    <item name="subtitleTextStyle">@style/ActionBar.SubTitle</item>
</style>

这应该适合你。

相关问题