【问题标题】:Spinner Data Contents are not Visible微调器数据内容不可见
【发布时间】:2012-08-23 04:49:32
【问题描述】:

我有一个旋转器。我已经从数据库中检索了我在 SPINNER 中的内容并将其绑定到 Spinner。 但我的问题是 Spinner 窗口弹出的背景颜色是白色的,内容的字体颜色也是白色的。 所以除了选中的内容,我无法查看窗口中的内容。

如何设置 Spinner 的字体颜色?

以下是活动代码:

我有一个旋转器。我已将 SPINNER 中的内容从数组绑定到 Spinner。

String bloodgroups[]={
"A +ve" "B +ve"
};
Spinner spinner=(Spinner)findViewById(R.id.spin);
ArrayAdapter<String> adapter=new ArrayAdapter<String> this,android.R.layout.simple_dropdown_item_1line,bloodgroups);
spinner.setAdapter(adapter);

但我的问题是 Spinner 窗口弹出的背景颜色是白色的,内容的字体颜色也是白色的。 所以除了选中的内容,我无法查看窗口中的内容。

如何设置 Spinner 的字体颜色?

以下是附件:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >


<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/tc"
    android:orientation="vertical" >


    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:freezesText="false"
        android:text="Enter Name"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:typeface="monospace" />


    <EditText
        android:id="@+id/txtname"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPersonName" >

        <requestFocus />
    </EditText>

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enter Date of Birth"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TableRow
        android:id="@+id/tableRow1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >


        <EditText
            android:id="@+id/txtdate"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:inputType="date" />



        <Button
            android:id="@+id/btnseldate"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Select Date" />

    </TableRow>

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Select Blood Group"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <Spinner
        android:id="@+id/spinner1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" 
        />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enter Address"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <EditText
        android:id="@+id/txtadd"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPostalAddress" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enter ContactNo. "
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <EditText
        android:id="@+id/txtno"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="phone" />


    <Button
        android:id="@+id/btnadd"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Submit Details" />




    <Button
        android:id="@+id/btndisplay"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Show Details" />

</LinearLayout>    
</ScrollView>

以下是附件:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >


<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/tc"
    android:orientation="vertical" >


    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:freezesText="false"
        android:text="Enter Name"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:typeface="monospace" />


    <EditText
        android:id="@+id/txtname"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPersonName" >

        <requestFocus />
    </EditText>

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enter Date of Birth"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TableRow
        android:id="@+id/tableRow1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >


        <EditText
            android:id="@+id/txtdate"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:ems="10"
            android:inputType="date" />



        <Button
            android:id="@+id/btnseldate"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Select Date" />

    </TableRow>

    <TextView
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Select Blood Group"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <Spinner
        android:id="@+id/spinner1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" 
        />

    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enter Address"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <EditText
        android:id="@+id/txtadd"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPostalAddress" />

    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Enter ContactNo. "
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <EditText
        android:id="@+id/txtno"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="phone" />


    <Button
        android:id="@+id/btnadd"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Submit Details" />




    <Button
        android:id="@+id/btndisplay"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Show Details" />

</LinearLayout>    
</ScrollView>

【问题讨论】:

  • 我添加了 内容。请检查它。
  • 你试过用户:Ram Kiran 的回答吗?
  • 更改微调器字体颜色参考休闲stackoverflow.com/questions/4361604/…
  • 是的,我尝试过用户:Ram Kiran 的建议,但没有奏效。
  • 这是由于您用于微调器的布局 (android.R.layout.simple_spinner_dropdown_item) 尝试使用它以获得进一步的帮助,请提供您用于微调器的代码 sn-p

标签: android android-widget spinner android-spinner


【解决方案1】:

您需要通过在下拉列表中创建视图来创建自定义适配器:

static class CustomArrayAdapter<T> extends ArrayAdapter<T>
{
    public CustomArrayAdapter(Context ctx, T [] objects)
    {
        super(ctx, android.R.layout.simple_spinner_item, objects);
    }

    //other constructors

    @Override
    public View getDropDownView(int position, View convertView, ViewGroup parent)
    {
        View view = super.getView(position, convertView, parent);

        //we know that simple_spinner_item has android.R.id.text1 TextView:         

        /* if(isDroidX) {*/
            TextView text = (TextView)view.findViewById(android.R.id.text1);
            text.setTextColor(Color.RED);//choose your color :)         
        /*}*/

        return view;

    }
}

并使用:

 this.mAdapter = new CustomArrayAdapter<CharSequence>(this, bloodgroups);

【讨论】:

    【解决方案2】:

    simple_spinner_item.xml

    <TextView
       xmlns:android="http://schemas.android.com/apk/res/android"
       android:id="@+id/text1"
       android:layout_width="fill_parent"
       android:layout_height="wrap_content"
       android:textColor="#000"
       android:gravity="center_vertical"
       android:padding="20dp"
       android:textSize="25dp"
       android:layout_marginTop="15dp"/>
    

    在你的活动中

    ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(this,R.layout.simple_spinner_item);
    //adapter.add();====> Add items to the adapter here
    spinner.setAdapter(adapterGender);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-27
      • 1970-01-01
      • 1970-01-01
      • 2020-09-12
      • 1970-01-01
      相关资源
      最近更新 更多