アクション バーでドロップダウン ナビゲーションを使用していますが、暗いアクション バーを使用すると、対応するテキストの適切な色を取得できません。アクションバー自体は濃いグレーで、文字色は黒なので非常に読みにくいです。
Action Bar 開発者ガイドの基本的な手順に従ったので、私のコードは単純です
SpinnerAdapter mSpinnerAdapter = ArrayAdapter.createFromResource(this, R.array.action_list, android.R.layout.simple_spinner_dropdown_item);
ActionBar.OnNavigationListener navigationListener = new OnNavigationListener() {
@Override
public boolean onNavigationItemSelected(int itemPosition, long itemId) {
// TODO
return false;
}
};
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
actionBar.setListNavigationCallbacks(mSpinnerAdapter, navigationListener);
私のstyles.xmlは単純でした
<resources>
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
</style>
</resources>
それは私に何か賢明なものを与えたはずだと思いますが、次の画像が示すように、暗い灰色の背景に黒いテキストとして出てくるので、それは良くありません.
問題を解決するために、styles.xml ファイルをいじってみました。私の最善の試みは次のとおりでした
<resources>
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<item name="android:actionDropDownStyle">@style/myActionDropDownStyle</item>
<item name="android:actionBarStyle">@style/myActionBar</item>
</style>
<style name="myActionDropDownStyle" parent="android:style/Widget.Holo.Light.Spinner">
<item name="android:background">@color/LightCyan</item>
</style>
<style name="myActionBar" parent="@android:style/Widget.Holo.Light.ActionBar.Solid.Inverse">
<item name="android:titleTextStyle">@style/myActionBar.titleTextStyle</item>
</style>
<style name="myActionBar.titleTextStyle" parent="@android:style/TextAppearance.Holo.Widget.ActionBar.Title.Inverse">
<item name="android:textColor">@color/Orange</item>
</style>
</resources>
(1)アプリタイトルの文字色をオレンジに変更、(2)アクションバーで選択したナビゲーション項目の背景色を水色に変更、(3)背景色を変更少なくとも黒いテキストが明るい背景に対して表示されるようにします。ただし、アクションバーに表示されている選択されたアイテムまたはドロップダウンに表示されているアイテムのいずれについても、テキストの色自体を変更することはありません。私の最善の試みも恐ろしいように見えます:-(!
私が欲しいのは、アクションバーに表示される選択されたアイテムの適切なテキストの色を持つ暗いアクションバーです。これは、アイテムが選択されているときに使用されるテキストの色と同じであり、アイテムが選択されているときのドロップダウンの背景色です選択されていることは、アクション バーと同じ色です。しかし、私はそれを行う方法を考え出すことができません. 誰か助けてもらえますか?
参考までに、最近ダウンロードした adt-bundle (adt-bundle-windows-x86_64-20130219) で Eclipse を使用しています。解決策を検索すると、Sherlock アクション バーについて多くの情報が見つかりましたが、Sherlock のスタイルはその adt-bundle に含まれていませんでした。いずれにせよ、私が使用している Holo.Light.DarkActionBar で私が望むことは確かに可能でしょうか?