简体   繁体   English

Android Spinner文字颜色

[英]Android Spinner text color

I have a Spinner and for populating him i use a SimpleCursorAdapter. 我有一个Spinner,为了填充他我使用SimpleCursorAdapter。 I want the font color for spinner to be Black and font color for drop down to be White. 我希望微调器的字体颜色为黑色,下拉的字体颜色为白色。 I have this code: 我有这个代码:

String[] column = { "name" };
int[] viewIds = new int[] { R.id.spinner_dropdown_design_from };

SimpleCursorAdapter fromListAdapter = new SimpleCursorAdapter(MyClass.this, R.layout.spinner_drop_down_from, cursor,
        column, viewIds) {

@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
    View viewFromListAdapter = super.getDropDownView(position, convertView, parent);
    if (position % 2 == 0) {
        viewFromListAdapter.setBackgroundResource(R.layout.dropdown_selector_odd);
    } else {
        viewFromListAdapter.setBackgroundResource(R.layout.dropdown_selector_even);
    }
    return viewFromListAdapter;
}

}; };

So i use different layout for odd and even rows in the dropdown. 所以我在下拉列表中对奇数行和偶数行使用不同的布局。 I give you an example for dropdown_selector_even 我给你一个dropdown_selector_even的例子

 <?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_selected="true" android:drawable="@drawable/grey_background"/>
    <item android:state_focused="true" android:drawable="@drawable/blue_background"/>
    <item android:state_pressed="true" android:drawable="@drawable/blue_background"/>
    <item android:drawable="@drawable/grey_background"/>
</selector>

And spinner_drop_down_from 和spinner_drop_down_from

<?xml version="1.0" encoding="utf-8"?>
<TextView
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/spinner_dropdown_design_from"
    android:layout_height="100dip"
    android:layout_width="fill_parent"
    android:paddingLeft="20dip"
    android:textSize="40dip"
    android:gravity="center_vertical"
    android:textStyle="normal|bold" 
    android:textColor="#000000"/>

Can someone help me? 有人能帮我吗? Thanks in advance! 提前致谢!

I found the solution. 我找到了解决方案。 I must also overwrite the getView method Something like this 我还必须覆盖getView方法

@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
TextView text = (TextView) view.findViewById(R.id.spinner_dropdown_design_products);
text.setTextColor(Color.WHITE);
return view;
}

Please take a look to the following link. 请查看以下链接。 It worked for me, and not need to use custom adapters. 它对我有用,而不需要使用自定义适配器。 Just xml. 只是xml。 http://www.broculos.net/2013/09/how-to-change-spinner-text-size-color.html#.U2eJI_l5OSo http://www.broculos.net/2013/09/how-to-change-spinner-text-size-color.html#.U2eJI_l5OSo

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM