我有一个Android ListView,我想在其中更改一些选定的行属性,如背景颜色,图像视图等。
我知道如何通过获取视图对象来更改onItemClick(AdapterView<?> parent, View view, int position, long id)
。
但现在问题是我想在侦听器之外修改此行属性。我已经搜索了很多但却无法找到解决方案。
我也在这里阅读了ListView和BaseAdapter的文档:
我该如何完成这项任务?
答案 0 :(得分:1)
我希望您使用自定义适配器,如果是,请按照后续步骤操作。
如果当前视图满足您的条件,则在getView()方法中设置背景(或您想要的任何更改)。否则将背景重置为默认值。例如,我想以不同的颜色显示备用行,然后我将执行如下
public View getView(int position, View view, ViewGroup parent) {
if (view == null) {
LayoutInflater inflater = getLayoutInflater();
view = inflater.inflate(R.layout.row, parent, false);
} else {}
if (position % 2 == 0) {
view.setBackgroundResource(R.color.gray);
} else {
view.setBackgroundResource(R.color.white);
}
return view;
}