Селектор XML накачки Android для использования в StateListDrawable

Можно ли накачать созданный в XML селектор для использования StateListDrawable программно?

я нашел это StateListDrawable имеет inflate метод, но я не нахожу примеров использования.

Было бы неплохо избежать этого:

StateListDrawable states = new StateListDrawable();
states.addState(new int[] {android.R.attr.state_pressed}, getResources().getDrawable(R.drawable.pressed));
states.addState(new int[] {android.R.attr.state_focused}, getResources().getDrawable(R.drawable.focused));
states.addState(new int[] { }, getResources().getDrawable(R.drawable.normal));
imageView.setImageDrawable(states);

Кто-нибудь знает, если это возможно, и привести пример?

Заранее спасибо.

0 ответов

Конечно, это возможно. Вы найдете больше информации о каждом другом доступном чертеже в документации по списку состояний. Я надеюсь, что этот ответ пригодится любому даже шесть лет спустя.

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/pressed"
          android:state_pressed="true" />
    <item android:drawable="@drawable/focused"
          android:state_focused="true" />
    <item android:drawable="@drawable/normal" />
</selector>
Другие вопросы по тегам