我试图在列表项目中定位ImageView来设置其背景颜色,但我没有运气。
这是我到目前为止所走过的路线,它没有做任何事情。我是否应该将其编码到我的自定义listAdapter中?
listView.getChildAt(0).findViewById(R.id.leftBar).setAlpha(0.3f);
listItems的数据是从Object填充的,我不想将代码添加到对象中,因为我认为这是错误的方法(思考MVC)和这就是为什么我认为将代码放入listAdapter可能是正确的做法?
答案 0 :(得分:0)
在我的ListAdapter中,我使用以下命令来定位ImageView:
public View getView(int position, View convertView, ViewGroup parent) {LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View rowView = inflater.inflate(R.layout.list_item, parent, false);
View iv = rowView.findViewById(R.id.leftBar);
if (position == ListView.currentStage){
iv.setBackgroundColor(getContext().getResources().getColor(R.color.Green));
} else if (position < ListView.currentStage){
iv.setBackgroundColor(getContext().getResources().getColor(R.color.Red));
}else if (position > ListView.currentStage) {
iv.setBackgroundColor(getContext().getResources().getColor(R.color.Peach));
}