Конфликт стилей android actionbarsherlock с настройками

<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 ответ

Решение

Так что вместо использования <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>

Это должно помочь вам.

Другие вопросы по тегам