如何在操作栏NAVIGATION_MODE_LIST中更改“小三角颜色”

在我将action bar设置为NAVIGATION_MODE_LIST

 getActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); 

然后为它设置适配器。

列表按预期显示,但我需要更改列表的“小三角”颜色,因为默认颜色非常接近我的背景颜色

是否可以这样做,如果是这样,我该怎么做?

要更改的小三角形位于ActionBar Spinner小部件的背景中。 背景是一个可绘制的州名单 。 可绘制状态列表的项目是像这样的9-patch drawables(这个特别的一个是Holo light主题的默认状态的hdpi版本):

在此处输入图像描述

要更改三角形的颜色,您必须更改这些9-patch drawable的几组 – 每个dpi和状态组合可绘制一组。 您还需要将自定义状态列表drawable作为Spinner小部件的背景。

要更改小部件背景,您必须调整主题。 如果你正在使用ActionBarSherlock (ABS)更改actionDropDownStyle项和本机ActionBar更改android:actionDropDownStyle项(即使你使用ABS本机ActionBar用于运行Android 4.0及更高版本的设备)。

主题应该是这样的:

  

MyActionBarSpinnerStyle应该是这样的:

  

如果您使用ABS或Widget.Sherlock.Light.Spinner.DropDown.ActionBar而不是MyDropDownActionBarStyle那么应该有类似Widget.Sherlock.Light.Spinner.DropDown.ActionBar如果您只定位本机ActionBar。