默认情况下,当您在微调器中选择一个项目时,它会在消失前略微突出显示。
我使用以下代码将我的微调器行的颜色更改为替换颜色,并且突出显示消失。 R.layout.textviewinside和R.layout.textview不会导致这个,只是getDropDownView的@Override,因为如果我注释掉那个块,一切都会有效。
如何恢复该功能但保留行颜色?
products = new ArrayAdapter<String>(this, R.layout.textview, thedata){
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
View v = super.getDropDownView(position, convertView, parent);
if (position % 2 == 0) { // we're on an even row
v.setBackgroundColor(0xffEBF4FA);//Color.BLUE)
} else {
v.setBackgroundColor(Color.WHITE);
}
((TextView) v).setGravity(Gravity.CENTER);
return v;
}
};
products.setDropDownViewResource(R.layout.textviewinside);
spitem.setAdapter(products);
答案 0 :(得分:1)
您不需要使用setBackgroundColor,而是需要使用setBackgroundDrawable,并使用带有按下/默认状态的xml状态列表可绘制文件。
http://developer.android.com/guide/topics/resources/drawable-resource.html#StateList