【问题标题】:Listview item background color changeListview 项目背景颜色更改
【发布时间】:2014-09-13 11:23:34
【问题描述】:

我想在没有 onitemclick() 方法的情况下更改列表视图项的背景颜色。因为一开始我要检查项目数据并基于它会改变颜色。我该怎么做?

【问题讨论】:

  • 您想在检查某些条件后更改CLICKEDListView Item的背景颜色?

标签: json listview android-listview


【解决方案1】:

罢工>

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;
}

【讨论】:

  • 我想在没有 onItemClick() 方法的情况下改变背景颜色。因为我必须检查任何项目是否包含特定数据。
  • 谢谢纳迪姆。我没有解决,但我遇到了问题,所以它会克服的。
猜你喜欢
  • 2012-03-10
  • 1970-01-01
  • 2016-03-13
  • 2011-01-14
  • 2013-06-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多