未在listview中选中Android onClick复选框

未在listview中选中Android onClick复选框,android,listview,checkbox,Android,Listview,Checkbox,我正在使用复选框处理定制的ListView。当我们点击列表视图的项目时,我试图选中单选复选框。我怎么做 我的XML代码 <TextView android:id="@+id/addressTXT" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerVertical="true" android:layout_mar

我正在使用复选框处理定制的ListView。当我们点击列表视图的项目时,我试图选中单选复选框。我怎么做

我的
XML代码

<TextView
    android:id="@+id/addressTXT"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_marginTop="10dp"
    android:text="Price" />

<CheckBox
    android:id="@+id/addressCheckBox"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_toRightOf="@+id/addressTXT"
    android:layout_marginRight="40dp"
    android:focusable="false"
    android:focusableInTouchMode="false" />
我该怎么做?

您可以这样做:

    itemView.setOnClickListener(new OnClickListener() {

    @Override
    public void onClick(View v) {
        CheckBox box = v.findViewById(R.id.addressCheckBox); //get your checkbox
        box.setChecked(!box.isChecked()); //toggle checkbox-state
    }
});

首先,您必须为复选框而不是整个视图双关onClickListener。 第二,在XML for adapter中,您必须将此作为复选框

android:focusable="true"
android:clickable="true"
android:focusable="false"
android:clickable="true"
若您需要为复选框和listView行使用单独的clickListeners,则需要为复选框使用XML中的此参数

android:focusable="true"
android:clickable="true"
android:focusable="false"
android:clickable="true"
我也面临同样的问题:) 我像下面这样解决了这个问题

    itemView.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            for (int i = 0; i < parent.getChildCount(); i++) {

                View view = parent.getChildAt(i);
                CheckBox checkBox = (CheckBox) view
                        .findViewById(R.id.CheckBox);
                checkBox.setChecked(false);

            }

            CheckBox checkBox = (CheckBox) v
                    .findViewById(R.id.CheckBox);
            checkBox.setChecked(true);

        }
    });
itemView.setOnClickListener(新的OnClickListener(){
@凌驾
公共void onClick(视图v){
//TODO自动生成的方法存根
对于(int i=0;i
user单选按钮并使用自定义选择器更改背景,使其看起来像复选框