当我使用android.R.layout.simple_list_item_single_choice
中的布局作为列表项时,点击后会检查复选框,一切正常。
但是当我使用布局时:
<CheckedTextView android:id="@+id/choice_item"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="CheckedTextView"
android:clickable="true"
android:focusable="true"
android:gravity="center_vertical"
android:checkMark="?android:attr/listChoiceIndicatorMultiple"
android:textSize="@dimen/text_size_medium"/>
复选框不会切换。
onClickListener
中实施adapter
这样的内容:
((CheckedTextView) convertView.findViewById(R.id.dp_quiz_answer_choice_item)).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
((CheckedTextView) v).toggle();
}
});
SINGLE_CHOICE
模式被禁用(可以启用任意数量的复选框)。
setOnItemClickListener
,则不会切换复选框。
mChoiceList.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int item,
long id) {
mChoiceList.setItemChecked(item, true);
}
});
有没有办法为SINGLE_CHOICE
模式ListView
设置自定义布局?
答案 0 :(得分:1)
您正在使用?android:attr/listChoiceIndicatorMultiple
,其中?android:attr/listChoiceIndicatorSingle
适用于SINGLE_CHOICE
答案 1 :(得分:0)
对我来说有点奇怪,经过许多其他实验,我了解到id
与CheckedTextView
中使用android.R.layout.simple_list_item_single_choice
相同的@android:id/text1
为我工作。标识为{{1}}。