Я пытаюсь определить фокус / нажатый цвет для кнопки и других элементов.
Это необходимо, потому что я разрабатываю новые компоненты, и важно, чтобы они выглядели как часть платформы.
Эти цвета ОРАНЖЕВЫЙ на Android SDK и ЗЕЛЕНЫЙ на HTC SenseUI.
Если бы я мог обнаружить этот цвет, мой компонент будет выглядеть как часть платформы в обеих версиях.
Кто-нибудь знает, как это сделать?
Можно создать «селектор», который использует пользовательское изображение для состояния по умолчанию и платформу по умолчанию для фокуса / выделения.
Для этого выполните шаги:
1) создать XML-файл с селектором в «res / drawable» (например, «red_button.xml»):
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true"
android:drawable="@android:drawable/btn_default" >
</item>
<item android:state_focused="true"
android:drawable="@android:drawable/btn_default" >
</item>
<item
android:drawable="@drawable/btn_default_red" >
</item>
</selector>
2) из папки "... / android-sdk-mac / platform / android-1.5 / data / res / drawable /" сделать снимок "btn_default_pressed.9.png" и изменить цвет, как вам нравится (мне нужно измените его на красный и для этого достаточно GIMP).
3) поместить измененное изображение в "res / drawable" (например, с именем "btn_default_red.9.png")
4) определить кнопку:
<Button
android:id="@+id/info_button"
android:layout_width="wrap_content"
android:layout_height="37dip"
android:layout_marginTop="1dip"
android:background="@drawable/red_button"
android:text="[Info]" />
Вот и все.
Это результат:
альтернативный текст http://img200.imageshack.us/img200/1349/custombutton.png