Я взял файл btn_default.xml из файла android sdk под платформами /android -7/data/res/drawable-mdpi и застрял в каталоге, пригодном для приложения.
Затем я взял все изображения с 9 патчами, упомянутые в файле XML, и скопировал их в мой каталог.
Затем я изменил каждое изображение с 9 патчами, имеющее оранжевый цвет, поэтому он был красным (для тестирования) и сохранил его.
Когда я запускаю свое приложение и фокусирую кнопку с помощью клавиатуры или просто касаюсь одной, я все равно получаю оранжевый цвет hilite вокруг кнопки. Где этот оранжевый халит, исходящий от???
Это мой файл-селектор:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_window_focused="false"
android:state_enabled="true"
android:drawable="@drawable/btn_default_normal" />
<item
android:state_window_focused="false"
android:state_enabled="false"
android:drawable="@drawable/btn_default_normal_disable" />
<item
android:state_pressed="true"
android:drawable="@drawable/btn_default_pressed" />
<item
android:state_focused="true"
android:state_enabled="true"
android:drawable="@drawable/btn_default_selected" />
<item
android:state_enabled="true"
android:drawable="@drawable/btn_default_normal" />
<item
android:state_focused="true"
android:drawable="@drawable/btn_default_normal_disable_focused" />
<item
android:drawable="@drawable/btn_default_normal_disable" />
</selector>
Хорошо, после многократного поиска я нашел ответ ниже. Невозможно установить цвет селектора (btn_square_overlay_pressed.png) из файла селектора. Мне пришлось установитьSelector() на мой объект gridview, который заполнял его содержимое из ImageAdapter, который получал его изображения из файла селектора xml.