У меня есть кнопка с двумя состояниями (выбрано и не выбрано). изображение кнопки отличается для состояний. Какой из них я должен использовать? Как установить изображения и состояния? Пожалуйста, дайте предложения (я новичок в android).Что я должен использовать ImageButton или Button?
9
A
ответ
14
Используйте xml-конфигурацию в папке с возможностью переноса. Вместо ссылки на изображение в качестве фона для вашей кнопки, вы ссылаетесь эту конфигурацию XML (имя файла):
Например: my_button.xml
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_focused="true"
android:state_pressed="false"
android:drawable="@drawable/button_style1_active" />
<item
android:state_focused="true"
android:state_pressed="true"
android:drawable="@drawable/button_style1_down" />
<item
android:state_focused="false"
android:state_pressed="true"
android:drawable="@drawable/button_style1_down" />
<item
android:drawable="@drawable/button_style1_up" />
</selector>
Использование в layout.xml:
<Button android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Tap me"
android:background="@drawable/my_button"/>
С помощью этой конфигурации вы можете влиять на внешний вид кнопки, при нажатии, фокусировке и так далее. Точно так же для обоих типов кнопок (Button и ImageButton). Если ваша кнопка не содержит текста, используйте ImageButton.
Смежные вопросы
- 1. что я должен использовать && или ||
- 2. Что я должен использовать?
- 3. Что я должен использовать, CodeContract или CuttingEdge.Conditions?
- 4. Что я должен использовать триггеры или ограничения?
- 5. Синглтон или статический - что я должен использовать?
- 6. Что я должен использовать? UTF8 или UTF16?
- 7. Что я должен использовать GTK + или QT
- 8. Resizable ImageButton или Button в asp.net
- 9. ImageButton over Button touch
- 10. ImageView vs ImageButton vs Button
- 11. Что я должен использовать? (производительность)
- 12. Что я должен использовать InputStream или FileInputStream или BufferedInputStream?
- 13. Что проверки я должен использовать
- 14. MySQL. Должен ли я использовать last_insert_id()? или что-то другое?
- 15. Что я должен использовать? Socket.io номера или Redis pub-sub?
- 16. Android Что я должен использовать в качестве штата или местоположения?
- 17. Что я должен использовать в Prism-MEF или Unity?
- 18. Десятичный (19,4) или десятичный (19,2) - что я должен использовать?
- 19. C# - Что я должен использовать, интерфейс, абстрактный класс или оба?
- 20. Что я должен использовать прямые поля FK или объекты Entity?
- 21. Что я должен использовать? SQL Triggers или Cron Jobs?
- 22. Что я должен использовать VB.net или C# для настольного приложения
- 23. Таблица или список: что я должен использовать здесь?
- 24. Что я должен использовать для обмена функциональностью, модулем или классом?
- 25. Поддомен или другой домен? Что я должен использовать
- 26. результат запроса, что я должен использовать Count() или любой()
- 27. Что я должен использовать режим сна или таймер
- 28. Должен ли я использовать HashMap, List или что-то еще?
- 29. Что я должен использовать для полей, sp или dp?
- 30. Что я должен использовать для разведки eclipse rcp или eclipse?
1000+ для этого ... работал хорошо .. – xydev 2010-11-24 09:06:05