未在listview中选中Android onClick复选框
我正在使用复选框处理定制的ListView。当我们点击列表视图的项目时,我试图选中单选复选框。我怎么做 我的未在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
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单选按钮并使用自定义选择器更改背景,使其看起来像复选框