我的列表视图行有自定义布局:
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/listSelector"
android:orientation="horizontal">
android:id="@+id/checkBoxSelection1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:padding="3dip">
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/checkBox1"
android:orientation="vertical">
android:id="@+id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
android:id="@+id/text2"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
我还有一个适配器来显示相应的数据;它做的.从UI的角度来看,它看起来像我想要它.
但是,当我单击一个复选框时 – 没有任何反应.我想存储我在后端选择的项目列表(理想情况下在活动类中).
在我的onCreate活动类中,我有这个代码:
listView.setAdapter(adapter);
listView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
// Click event for single list row
listView.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView> parent,View view,int position,long id)
{
int i = 1;
}
});
我得到了int 1 = 1;在那里,我可以添加一个断点,看看它是否被击中.它没有.我确定我做错了,就像它连接到列表视图行而不是复选框或其他东西 – 但我不知道如何将事件挂钩到复选框.
如果有人能指出我正确的方向,我会很感激.
谢谢
编辑:只是为了澄清
我在适配器中有这个:
taskChecked.setOnCheckedChangeListener(new OnCheckedChangeListener()
{
public void onCheckedChanged(CompoundButton arg0,boolean arg1)
{
// TODO Auto-generated method stub
int i = 1;
}
});
那个断点确实受到了打击.因此,当我选择或取消选中复选框时,我只是想知道如何在活动中引发事件,而不仅仅是适配器.