自定义列表点击与复选框
-
23-08-2019 - |
题
我填充使用ListActivity
一个Cursor
当列表项目之一已被点击启动另一个活动SimpleCursorAdapter
。我还使用ViewBinder
做一些数据的自定义转换。
我想,所以我已经改变了视图,并添加了CheckBox
重力到CheckBox
添加到列表中的每个行权。
添加CheckBox
已删除点击的项目的能力。当你按下一个列表项的onListItemClick
方法我在ListActivity
重写不再调用。卸下CheckBox
修复此。这是为什么?
另外,我怎么可以设置以便它继续如果单击列表项的主要部分,但有当项目CheckBox
检查附加功能来执行我需要的功能列表?将设定onCheckedChangedListener
工作或在相同的视图实例为列表中的每个项目重复使用?
解决方案 2
看起来SimpleCursorAdapter
是什么,我想实现太原始。
我已经切换到实施CursorAdapter
并使用LayoutInflater
在我的实施newView
方法返回的新视图。
public View newView(Context context, Cursor cursor, ViewGroup parent) {
return LayoutInflater.from(context).inflate(R.layout.alarm_row, parent, false);
}
在bindView我然后设置一个自定义OnClickListener
我的主要LinearLayout
然后另一个OnCheckedChangeListener
到CheckBox
。
有关这一切看的权利,我不得不设置LinearLayout
的背景Android的菜单项绘制:
android:background="@android:drawable/menuitem_background"
其他提示
由于这里,点击收听唯一的作品解释如果没有其他的观点是focusable
。您CheckBox
设置为focusable="false"
应该做的伎俩:
<CheckBox android:focusable="false" />
不隶属于 StackOverflow