如何在Android上更改已打开的Spinner的文本背景颜色

时间:2013-03-08 16:51:45

标签: android xml text styles spinner

我在我的应用程序中设置了这个XML样式,但是当我打开一个Spinner时,我看不到文本。 这是搜索信息的地方。我真的不知道我做错了什么。

这是XML样式:

<style name="Theme.Color" parent="android:Theme">
    <item name="android:textColor">#FFFFFF</item>
    <item name="android:windowBackground">@drawable/fondo2</item>
</style>

这是Spinner的XML:

            <Spinner
            android:id="@+id/spAnswers"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@+id/tvSecurity"
            android:entries="@array/box" />

当我打开一个Spinner时会发生这种情况,我看不到文字(文字颜色是白色)。

我需要在文本颜色打开或文本背景发生变化时将文本颜色设置为另一个微调器。

enter image description here

1 个答案:

答案 0 :(得分:6)

为Spinner创建适配器时,会提供自定义布局而不是预定义布局

创建名为spinner_row.xml的xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
 android:id="@+id/cust_view"  
    android:layout_width="match_parent" 
    android:textColor="@color/black"
    android:textSize="12dp"
    android:layout_height="36dp" 
    android:gravity="left|center_vertical"/> 

在这里,您可以通过修改此textview来更改微调器中元素的颜色文本大小和宽度和高度

在创建适配器

时使用它
 ArrayAdapter<String> adapter=new ArrayAdapter<String>(context, R.layout.spinner_row,yourlist);

最后一项任务是常规的

spinner.setAdapter(adapter);

我希望这会对你有所帮助。