我正在使用ActionBarCompat和两个Title文本,后跟ActionBar中的微调器。我正在使用主题Theme.AppCompat.Light.DarkActionBar,它应该在黑色背景上显示白色文本。标题文本显示为白色,但微调文本显示为黑色。将主题切换为Theme.AppCompat.Light在白色上都有黑色文本。任何人都可以建议我如何将白色文本输入微调器?我已经看到ActionBar和ActionBarSherlock的建议,但无法让它们在ActionBarCompat上工作。我按照以下方式尝试了样式而没有成功:
<style name="SBRRTheme" parent="AppTheme">
<item name="android:spinnerDropDownItemStyle">@style/SBRRCustomDropDownItemStyle</item>
</style>
<style name="SBRRCustomDropDownItemStyle"> parent="@android:style/Widget.AppCompat.Light.DropDownItem.Spinner">
<item name="android:textAppearance">@style/SBRRCustomDropDownItemTextStyle</item>
</style>
<style name="SBRRCustomDropDownItemTextStyle"> parent="@android:style/Widget.AppCompat.Spinner.DropDown.ActionBar">
<item name="android:textColor">@color/white</item>
</style>
清单中的活动定义是:
<activity
android:theme="@style/Theme.AppCompat.Light.DarkActionBar"
android:name="com.example.actionbar2.RaceResultsActivity"
android:label="@string/action_raceresults"
android:parentActivityName=".MainActivity" >
<meta-data android:name="android.support.PARENT_ACTIVITY"
android:value=".MainActivity" />
</activity>
更多信息,在使用Nexus-S仿真器和物理Galaxy S2进行测试后,都运行JellyBean,ActionBarCompat本身的微调器外观问题只出现在我的开发设备上,运行2.3.5的Galaxy Y姜饼。同样显示在2.3.3 AVD上。
答案 0 :(得分:14)
您需要将listadapter设置为 R.layout.support_simple_spinner_dropdown_item
示例:
Context context = ab.getThemedContext();
ArrayAdapter<CharSequence> listAdapter =
ArrayAdapter.createFromResource(context, R.array.locations, R.layout.support_simple_spinner_dropdown_item);
listAdapter.setDropDownViewResource(R.layout.support_simple_spinner_dropdown_item);
支持库具有下拉微调项目的布局。
@Kuitsi评论是正确的。对下拉视图和项目使用相同的布局。