Android 更改操作栏微调器文本颜色

Android 更改操作栏微调器文本颜色,android,android-actionbar,android-spinner,android-appcompat,Android,Android Actionbar,Android Spinner,Android Appcompat,我已经读过很多在ActionBar中更改微调器textColor的方法,但我真的无法找出我需要的东西缺少了什么 这是我如何使用actionbar微调器的: 如您所见,微调器项上有白色文本。我需要把它换成黑色 我的res/styles文件就是这个 <resources xmlns:android="http://schemas.android.com/apk/res/android"> <style name="AppBaseTheme" parent="@styl

我已经读过很多在ActionBar中更改微调器textColor的方法,但我真的无法找出我需要的东西缺少了什么

这是我如何使用actionbar微调器的:

如您所见,微调器项上有白色文本。我需要把它换成黑色

我的res/styles文件就是这个

<resources xmlns:android="http://schemas.android.com/apk/res/android">

    <style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

        <!-- API 14 theme customizations can go here. -->
        <item name="android:dropDownListViewStyle">@style/MyDropDownListView</item>
        <item name="android:dropDownItemStyle">@style/MyDropDownItemView</item>
        <!-- <item name="android:textColor">@color/white</item> -->
    </style>

    <!-- ActionBar styles -->
    <style name="MyDropDownListView" parent="@style/Widget.AppCompat.ListView.DropDown">
        <item name="android:background">@color/white</item>
    </style>

</resources>

@样式/MyDropDownList视图
@样式/MyDropDownItemView
@颜色/白色
我把背景改成了白色,但现在我需要把文本改成黑色,我做不到


有人能帮我吗?

我认为最简单的方法是为微调器创建自定义微调器项目布局,但只使用文本视图&它的颜色设置为您想要的颜色

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent"
          android:gravity="center"       
          android:textSize="14sp"
          android:textColor="#000000" />

这里还有一篇文章解释了如何通过更改xml样式来实现这一点:

更新:

从xml语句中删除“android:”部分,这些语句会更改appcompat库中的某些内容。在我的应用程序中,它成功了。因此,与此相反:

<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

        <!-- API 14 theme customizations can go here. -->
        <item name="android:dropDownListViewStyle">@style/MyDropDownListView</item>
        <item name="android:dropDownItemStyle">@style/MyDropDownItemView</item>
        <!-- <item name="android:textColor">@color/white</item> -->
    </style>

@样式/MyDropDownList视图
@样式/MyDropDownItemView
删除“android:”部分:


@样式/MyDropDownList视图
@样式/MyDropDownItemView
更新2:

所以我将发布我如何设计我的appcompat应用程序,这样也许你可以看到我没有看到的东西。我有两个文件夹:resources/values&resources/values-v14

在resource/value中,my style.xml文件如下所示:

  <style name="Theme.Jamesstyle" parent="@style/Theme.AppCompat.Light">
        <item name="actionBarStyle">@style/Actionbar.FlatUi</item>
        <item name="actionBarTabStyle">@style/ActionBar.FlatUi.Tabs</item>
        <item name="actionBarTabTextStyle">@style/ActionBar.FlatUi.Text</item>
        <item name="homeAsUpIndicator">@android:color/transparent</item>
    </style>
    <style name="Actionbar.FlatUi" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        <item name="background">@color/bizzumi_light</item>
        <item name="backgroundStacked">@color/bizzumi_red</item>
        <item name="backgroundSplit">@color/bizzumi_red</item>
        <item name="titleTextStyle">@style/TitleColor</item>
        <item name="displayOptions">showHome|homeAsUp|showTitle</item>
    </style>
    <style name="TitleColor" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
        <item name="textColor">#000099</item>
    </style>

@style/Actionbar.FlatUi
@样式/ActionBar.FlatUi.Tabs
@样式/ActionBar.FlatUi.Text
@android:彩色/透明
@彩色/bizzumi_灯
@颜色/bizzumi_红
@颜色/bizzumi_红
@样式/标题颜色
showHome | homeAsUp | showTitle
#000099
在我的resources/values-v14 style.xml文件中,我有:

<style name="Theme.Jamesstyle" parent="@style/Theme.AppCompat.Light">
        <item name="android:actionBarStyle">@style/Actionbar.FlatUi</item>
        <item name="android:actionBarTabStyle">@style/ActionBar.FlatUi.Tabs</item>
        <item name="android:homeAsUpIndicator">@android:color/transparent</item>
        <item name="android:actionBarTabTextStyle">@style/ActionBar.FlatUi.Text</item>
    </style>
    <style name="Actionbar.FlatUi" parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
        <item name="android:background">@color/bizzumi_light</item>
        <item name="android:backgroundStacked">@color/bizzumi_light</item>
        <item name="android:backgroundSplit">@color/bizzumi_light</item>
        <item name="android:titleTextStyle">@style/TitleColor</item>i
         <item name="android:displayOptions">showHome|homeAsUp|showTitle</item><item name="displayOptions">showHome|homeAsUp|showTitle</item></style>
    <style name="TitleColor" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
        <item name="android:textColor">#000099</item>
    </style>

@style/Actionbar.FlatUi
@样式/ActionBar.FlatUi.Tabs
@android:彩色/透明
@样式/ActionBar.FlatUi.Text
@彩色/bizzumi_灯
@彩色/bizzumi_灯
@彩色/bizzumi_灯
@风格/标题颜色
showHome | homeAsUp | showTitle showHome | homeAsUp | showTitle
#000099
也许可以尝试此文件夹结构并创建两个不同的style.xml文件。否则我就不知所措了。祝你好运

`
`<resources xmlns:android="http://schemas.android.com/apk/res/android">

<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

    <!-- API 14 theme customizations can go here. -->
    <item name="android:dropDownListViewStyle">@style/MyDropDownListView</item>
    <item name="android:dropDownItemStyle">@style/MyDropDownItemView</item>
    <!-- <item name="android:textColor">@color/white</item> -->
</style>

<!-- ActionBar styles -->
<style name="MyDropDownListView" parent="@style/Widget.AppCompat.ListView.DropDown">
    <item name="android:background">@color/white</item>
    <item name="android:textColor">#000000</item>
</style>
@样式/MyDropDownList视图 @样式/MyDropDownItemView @颜色/白色 #000000

我尝试执行链接中的操作,但没有成功删除xml语句中更改appcompat元素(如微调器)的“android:”部分。使用appcompat库,这是一种改变样式的不同方式。所以你的声明看起来有点像这样:@style/YourCustomDropDownItemStyle我已经更新了我的问题,因为注释部分的代码格式不太容易阅读。对不起,伙计,我会再试一次,但这是我能提出的最后一个建议,检查我的答案。我还没有测试它。我还有其他事情要做。但是你想帮我,所以。。。
`<resources xmlns:android="http://schemas.android.com/apk/res/android">

<style name="AppBaseTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">

    <!-- API 14 theme customizations can go here. -->
    <item name="android:dropDownListViewStyle">@style/MyDropDownListView</item>
    <item name="android:dropDownItemStyle">@style/MyDropDownItemView</item>
    <!-- <item name="android:textColor">@color/white</item> -->
</style>

<!-- ActionBar styles -->
<style name="MyDropDownListView" parent="@style/Widget.AppCompat.ListView.DropDown">
    <item name="android:background">@color/white</item>
    <item name="android:textColor">#000000</item>
</style>