我有一个Spinner,为了填充他,我使用了SimpleCursorAdapter。 我希望微调器的字体颜色为黑色,下拉的字体颜色为白色。 我有这段代码:
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;
}
};
所以我在下拉列表中对奇数行和偶数行使用不同的布局。 我给你一个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>
和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"/>
有人能帮助我吗? 提前谢谢!
答案 0 :(得分:6)
我找到了解决方案。 我还必须覆盖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;
}
答案 1 :(得分:2)
请查看以下链接。它对我有用,而不需要使用自定义适配器。只是xml。 http://www.broculos.net/2013/09/how-to-change-spinner-text-size-color.html#.U2eJI_l5OSo