如何使自定义列表视图中只有一个小部件可聚焦



我有一个带有一个复选框和两个文本视图的自定义列表视图。我正在使用一个自定义适配器来显示列表视图。问题是,如果我直接关注复选框,则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  
    }
});

相关内容

最新更新