Android 带有Theme.AppCompat.Light.DarkActionBar的ActionBarCompat显示白色标题文本,但显示黑色微调器文本

Android 带有Theme.AppCompat.Light.DarkActionBar的ActionBarCompat显示白色标题文本,但显示黑色微调器文本,android,colors,spinner,android-actionbar-compat,Android,Colors,Spinner,Android Actionbar Compat,我使用的是ActionBarCompat和标题文本,后面是ActionBar中的微调器。我正在使用theme.AppCompat.Light.DarkActionBar,它应该在黑色背景上显示白色文本。标题文本确实显示为白色,但微调器文本显示为黑色。将主题切换到theme.AppCompat.Light时,两者都显示为黑白文本。有人能建议我如何将白色文本输入微调器吗?我已经看到了关于ActionBar和ActionBarSherlock的建议,但无法让它们在ActionBarCompat上运行。

我使用的是ActionBarCompat和标题文本,后面是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>

@样式/sbrrustomdropdownItemStyle
parent=“@android:style/Widget.AppCompat.Light.DropDownItem.Spinner”>
@样式/sbrrustomdropdownItemTextStyle
parent=“@android:style/Widget.AppCompat.Spinner.DropDown.ActionBar”>
@颜色/白色
清单中的活动定义为:

        <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本身的微调器外观问题仅出现在我的开发设备上,Galaxy Y运行2.3.5姜饼。还显示在2.3.3 AVD上。

您需要将listadapter设置为R.layout。支持\u简单\u微调器\u下拉菜单\u项

例如:

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);
Context-Context=ab.getThemedContext();
阵列适配器列表适配器=
ArrayAdapter.createFromResource(上下文、R.array.locations、R.layout.support\u simple\u spinner\u dropdown\u项);
listAdapter.setDropDownViewResource(R.layout.support\u simple\u spinner\u dropdown\u项目);
支持库具有下拉微调器项的布局


@Kuitsi的评论是正确的。对下拉视图和项目使用相同的布局。

谢谢,这部分解决了问题,因为微调器的下拉列表现在显示项目为黑色加白色,但微调器的初始状态(即项目列表被下拉之前)仍然是深灰色加黑色。欢迎任何进一步的建议。您是否将主题设置为类似android:theme=“@style/theme.AppCompat.Light.DarkActionBar”或类似的活动?Hi Tarun,我已经包含了上面活动的清单定义。ActionBarCompat上的所有内容看起来都是正确的,除了黑色的微调器文本外,深灰色背景上的白色文本。我在使用
R.layout时将初始值设置为白色。同样在ArrayAdapter中支持\u simple\u微调器\u dropdown\u item
,节省了我的时间!是时候从ABS迁移到ABC了!!我们还确保调用getSupportActionBar()而不是getActionBar()。