我有一个带有一个复选框和两个文本视图的自定义列表视图。我正在使用一个自定义适配器来显示列表视图。问题是,如果我直接关注复选框,则onItemclick函数不适用于该复选框,它仅在列表先关注后关注复选框时才有效。我希望我的listview与checkedtextview类似,默认情况下复选框会获得焦点。有人能给我一个解决这个问题的办法吗?非常感谢。
尝试在使用getView()方法返回的view
中添加一个点击侦听器,如下所示:
view.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
/// checkboxview.clearFocus()
/// checkboxview.requestFocus()
}....
编辑。onclicklistener用于复选框:
CheckBox chckKill = new CheckBox(context);
chckKill.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
//is chkIos checked?
if (((CheckBox) v).isChecked()) {
///// your code here
}
}
});
将此代码添加到列表视图活动中,并根据您的规范进行更改。
View v;
LayoutInflater li =(LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = li.inflate(R.layout.listview, null);
CheckBox checkBox = (CheckBox)v.findViewById(R.id.check_box);
checkBox.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View view)
{
//Action
}
});