首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ListView启用checkedTextView异常

ListView启用checkedTextView异常
EN

Stack Overflow用户
提问于 2012-03-15 16:04:07
回答 2查看 923关注 0票数 1

我有一个包含20个项目的列表视图,使用CheckedTextView的android.R.layout.simple_list_item_multiple_choice作为文本视图布局。我希望复选框在选中时被选中,通过以下方式实现:

代码语言:javascript
复制
public void onListItemClick(ListView parent, final View v, int pos, long id) {
    ((CheckedTextView) v).setChecked(true);
}

然而,当我这样做时,不仅是特定的checkedtextview会被检查,还有其他几个也会被检查。

EN

回答 2

Stack Overflow用户

发布于 2012-03-15 16:11:31

试试这个-

代码语言:javascript
复制
((CheckedTextView)parent.getChildAt(pos)).setChecked(true);
票数 0
EN

Stack Overflow用户

发布于 2012-03-15 16:34:40

您可以通过创建自定义适配器来实现这一点。您所需要做的就是创建一个扩展BaseAdapter类的新类。

要将此代码用于您正在使用的布局,您需要修改getView method.below是以下代码片段

公共视图持有者(int getView,视图convertView,ViewGroup parent) { ViewHolder getView;

代码语言:javascript
复制
 if (convertView == null) 
 {
   convertView = mInflater.inflate(android.R.layout.simple_list_item_multiple_choice, null);

    holder = new ViewHolder();
    holder.checkbox = (CheckedTextView) convertView.findViewById(android.R.id.text1);

    convertView.setTag(holder);
 } 
 else
 {
    holder = (ViewHolder) convertView.getTag();
 }

  holder.checkbox.setText(tasks.get(position).getName());
  holder.checkbox.setChecked(tasks.get(position).isCompleted());

  return convertView;

}

static class ViewHolder {
  CheckedTextView checkbox;

}

希望这能对你有所帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9715881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档