Цвет текста панели меню ActionBarSherlock
У меня есть небольшой вопрос о тематике моего приложения, которое использует ActionBarSherlock. Все работает отлично, за исключением Samsung phones with TouchWizz
. Элементы меню переполнения отображаются нажатием клавиши меню оборудования.
Я знаю, как изменить фон панели. Моя тема по умолчанию расширяет Theme.Sherlock.Light.DarkActionBar
, поэтому цвет текста меню по умолчанию на панели оборудования будет black
, я не хочу этого менять.
Любые идеи о том, как это сделать, кроме изменения родительского элемента моей темы по умолчанию?
<style name="Theme.MyApp" parent="@style/Theme.Sherlock.Light.DarkActionBar">
<item name="android:panelBackground">@drawable/menu_hardkey_panel</item>
</style>
![enter image description here]()
Ответы
Ответ 1
Вот правильные настройки для настройки стиля аппаратного меню.
Вы должны посмотреть на panelColorForeground; -)
<item name="android:panelColorBackground">#FFFFFF</item>
<item name="android:panelColorForeground">@color/primary_text_holo_dark</item>
<item name="android:panelFullBackground">@drawable/menu_background_fill_parent_width_holo_dark</item>
<item name="android:panelTextAppearance">@style/Holo.TextAppearance</item>
Протестировано на эмуляторе HoloEverywhere lib и 2.3.
Подробнее см. attrs doc.
Ответ 2
Я не уверен, понимаю ли я, что вы хотите сделать, но если вы хотите изменить textColor на этой панели, вы можете создать собственный стиль с родительским набором в TextAppearance.Sherlock.Widget.PopupMenu, а затем изменить свойство textColor. Вот так:
<style name="Widget.MyApp.ActionBarPopupLargeTextColor" parent="TextAppearance.Sherlock.Widget.PopupMenu.Large">
<item name="android:textColor">@color/black</item>
</style>
<style name="Widget.MyApp.ActionBarPopupSmallTextColor" parent="TextAppearance.Sherlock.Widget.PopupMenu.Small">
<item name="android:textColor">@color/black</item>
</style>
Работал для меня:)