public class ListView extends ListActivity {
static String item;
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, Str.S);
setListAdapter(adapter);
}
这是我的 ListView 类,它工作得很好,它从一个名为 Str 的类中获取字符串并将它们显示在 ListView 中,问题是 ListView 样式不好,它是黑色的,字符串是白色的。
我希望它们可以替代每一行都有一种颜色。
我尝试了很多教程,但没有一个足够清楚.. 如何为每一行制作替代颜色 .. ex。第 1 行蓝色,第 2 行白色,第 3 行蓝色,第 4 行白色,等等。
最佳答案
Here是怎么做的。
这里简要给出我的示例代码:
覆盖适配器中的 getView
方法:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
if (position % 2 == 1) {
view.setBackgroundColor(Color.BLUE);
} else {
view.setBackgroundColor(Color.CYAN);
}
return view;
}
覆盖 ArrayAdapter
并在那里覆盖 getView 方法。
所以如果你的适配器是这样的:
public class MyAdapter extends ArrayAdapter
你的 ListActivity
会改变如下:
ArrayAdapter<String> adapter = new MyAdapter<String>(this,
android.R.layout.simple_list_item_1, Str.S);
Here's an example关于覆盖 ArrayAdapter。
关于ListView中的Android备用行颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13109840/