Хорошо, я пытаюсь создать пользовательское названное представление CheckedRelativeLayout
.
Это - цель, совпадает с a CheckedTextView
, чтобы смочь использовать его в списке объектов, Вы хотите выбранный или в a Spinner
.
Это все хорошо работает теперь, я расширился RelativeLayout
и реализованный Checkable
интерфейс.
Однако я застреваю на довольно простой проблеме: Где я могу найти Drawable
это CheckedTextView
и RadioButton
использовать?
Я посмотрел на исходный код обоих, и они, кажется, используют com.android.internal.R
. Хорошо... это - внутренний материал. Таким образом, я не могу получить доступ к нему.
Какой-либо способ получить эти Drawables или решить проблему так или иначе?
ищите в папке SDK /platforms/android-2.0/data/res/ вы можете получить к ним доступ либо через android.R.drawable (если они общедоступны), либо скопировать их как drawable в ваш проект
Для полноты картины:
Вот несколько фрагментов кода, которые показывают, как я добился работы с вышеприведенным ответом.
//Image Setup (Once when creating this view)
ImageView indicator = (ImageView) findViewById(R.id.RadioStatusImage);
indicator.setImageDrawable(getResources().getDrawable(android.R.drawable.btn_radio));
//State Change (In some other method)
android.R.attr.state_checked
if (isChecked)
{
indicator.setImageState(android.R.attr.state_checked, false);
}
else
{
indicator.setImageState(View.ENABLED_STATE_SET, false);
}
invalidate();