【发布时间】:2014-04-16 16:34:18
【问题描述】:
我在 ListView 的行项目中使用 CheckBox。将 CheckBox 设置为android:focusable="false"。因此 ListView 的 OnItemClickListener 工作正常,但复选框似乎不可点击。我该如何解决这个问题?
在我的自定义 arrayAdapter 中:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
FileHolder holder;
if(v == null){
LayoutInflater inflater = ((Activity)getContext()).getLayoutInflater();
v = inflater.inflate(layoutResourceId, parent, false);
holder = new FileHolder();
holder.isChecked = (CheckBox)v.findViewById(R.id.checkBox1);
v.setTag(holder);
holder.isChecked.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
Log.d("common", "checked");
}
});
}
}
在 row_item.xml 中:
<CheckBox
android:id="@+id/checkBox1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:button="@drawable/checkbox"
android:focusable="false"
android:focusableInTouchMode="false"
android:clickable="true"/>
编辑:我尝试注册一个 OnTouchListener,但也没有调用 onTouch()。
【问题讨论】:
-
@nKn:请阅读问题或至少阅读其标题...
标签: android listview android-listview focus android-checkbox