【发布时间】:2014-09-13 11:23:34
【问题描述】:
我想在没有 onitemclick() 方法的情况下更改列表视图项的背景颜色。因为一开始我要检查项目数据并基于它会改变颜色。我该怎么做?
【问题讨论】:
-
您想在检查某些条件后更改CLICKED时
ListView Item的背景颜色?
标签: json listview android-listview
我想在没有 onitemclick() 方法的情况下更改列表视图项的背景颜色。因为一开始我要检查项目数据并基于它会改变颜色。我该怎么做?
【问题讨论】:
ListView Item的背景颜色?
标签: json listview android-listview
罢工>
listView.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View view, int position,
long id) {
if(items.get(position).getSomething().equals(Something){
// If your condition fulfills then change background color
listView.getChildAt(position).setBackgroundColor(#55667788);
}
}
});
编辑:
@Override
public View getView(final int position, View convertView, ViewGroup arg2) {
// TODO Auto-generated method stub
if (convertView == null) {
LayoutInflater inflater = context.getLayoutInflater();
convertView = inflater.inflate(R.layout.row_counter, null);
final ViewHolder viewHolder = new ViewHolder();
viewHolder.name = (TextView) convertView.findViewById(R.id.tv_name);
viewHolder.number = (TextView) convertView
.findViewById(R.id.tv_number);
viewHolder.row = (TextView) convertView
.findViewById(R.id.rel_row);
convertView.setTag(viewHolder);
}
holder = (ViewHolder) convertView.getTag();
currentModel = list.get(position);
holder.name.setText(currentModel.getName());
holder.number.setText(currentModel.getNumber());
if(holder.name.equals("SOMETHING")){
holder.row.setBackgroundColor("#55667788");
}else{
holder.row.setBackgroundColor("#000000");
}
return convertView;
}
【讨论】: