android.content.res.Resources $ NotFoundException при программной установке android.R.attr.listChoiceIndicatorMultiple

Я пытаюсь программно установить атрибут "android: checkMark" для элементов CheckedTextView, которые есть в ListView. При запуске моего приложения я получаю следующее исключение:

android.content.res.Resources$NotFoundException: Resource ID #0x101021a

Ресурс с ID # 0x101021a соответствует android.R.attr.listChoiceIndicatorMultiple , что является именно тем значением, которое я передаю в свой CheckedTextView:

mCheckedTextView.setCheckMarkDrawable(android.R.attr.listChoiceIndicatorMultiple)

Разве это не способ сделать это из Джава? Я попытался (и мне это удалось) вызвать желаемое поведение из XML-макета:

<CheckedTextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:checkMark="?android:attr/listChoiceIndicatorMultiple"
    android:id="@android:id/text1" />

Дело в том, что во время компиляции я не знаю, должно ли оно быть

android:checkMark="?android:attr/listChoiceIndicatorMultiple"

или

android:checkMark="?android:attr/listChoiceIndicatorSingle"

Следовательно, мне нужно установить эти значения на время выполнения.

12
задан dbm 24 January 2011 в 14:18
поделиться