1
  • : からのレイアウト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_CHOICEmodeのカスタム レイアウトを作成する方法はありますListViewか?

4

2 に答える 2

1

SINGLE_CHOICE の本来?android:attr/listChoiceIndicatorMultipleあるべき場所を使用しています?android:attr/listChoiceIndicatorSingle

于 2013-06-04T14:39:46.767 に答える
0

それは私にとってちょっと奇妙なことでした。他の多くの実験の後で、私はで使用されたものと同じものを持っていることが私のために働いたことを学びidましCheckedTextViewandroid.R.layout.simple_list_item_single_choice。IDは@android:id/text1です。

于 2012-04-24T01:21:01.143 に答える