Android: создайте кнопку переключения с изображением и без текста.
возможно ли создать кнопку переключения на Android, у которой есть изображение, но нет текста? В идеале это выглядело бы так:
Ive видел аналогичные должности, где ответ заключался в изменении фона, но я хочу сохранить макет Holo Light и просто поменять текст изображением.
- Как получить количество непрочитанных писем Gmail (на Android)
- android: растянуть изображение в представлении изображения для соответствия экрану
- Изменение библиотеки OpenSSL в приложении Android для HttpClient
- Какова основная цель annotations @SerializedName в андроиде с помощью GSon
- Почему обновление приложений не производится путем вычисления разницы?
Мне нужно иметь возможность программно изменить источник изображения,
Любые идеи, как я это сделал бы?
Если это невозможно сделать, есть ли способ, которым я могу включить и выключить обычную кнопку?
- Показать активность от нижнего к верхнему
- Как разобрать JSON из Java HTTPResponse?
- Android 4.0: виджеты не появляются?
- Android: навигационная панель для всех видов деятельности
- как отображать прогресс при загрузке url в webview в Android?
- андроидальная кнопка возврата должна выйти из приложения
- ListView getChildAt возвращает null для видимых детей
- Android-x86 6.0 Marshmallow в VirtualBox: установка застряла на GRUB
-
Могу ли я заменить текст переключения на изображение
Нет, мы не можем, хотя мы можем скрыть текст, переопределив стиль по умолчанию кнопки переключения, но все же это не даст нам кнопку переключения, которую вы хотите, поскольку мы не можем заменить текст изображением.
-
Как я могу сделать обычную кнопку переключения
Создайте файл ic_toggle в папке
res/drawable
Здесь
@drawable/ic_slide_switch_on
&@drawable/ic_slide_switch_off
–@drawable/ic_slide_switch_off
вами изображения.Затем создайте другой файл в той же папке, назовите его ic_toggle_bg
Теперь добавьте свою собственную тему (если у вас нет одного файла styles.xml в папке
res/values/
)Это создаст пользовательскую кнопку переключения для вас.
-
Как это использовать
Используйте свой стиль и фон в своем представлении.
ToggleButton
наследует от TextView
поэтому вы можете установить чертежи, которые будут отображаться на четырех границах текста. Вы можете использовать это, чтобы отобразить значок, который вы хотите, поверх текста и скрыть фактический текст
Результат по сравнению с обычным ToggleButton
выглядит так:
Параметр «секунды» – использовать ImageSpan
чтобы фактически заменить текст изображением. Выглядит немного лучше, так как значок находится в правильном положении, но не может быть выполнен с помощью макета xml напрямую.
Вы создаете простой ToggleButton
Затем установите «текст» программно
ToggleButton button = (ToggleButton) findViewById(R.id.toggleButton3); ImageSpan imageSpan = new ImageSpan(this, android.R.drawable.ic_menu_info_details); SpannableString content = new SpannableString("X"); content.setSpan(imageSpan, 0, 1, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); button.setText(content); button.setTextOn(content); button.setTextOff(content);
Результат здесь в середине – значок располагается немного ниже, так как он заменяет текст.
создать toggle_selector.xml в res / drawable
примените селектор к кнопке переключения
Примечание: для удаления текста, который я использовал в приведенном выше коде
textOff="" textOn=""
Я знаю, что это немного поздно, однако для всех, кого это интересует, я создал пользовательский компонент, который в основном представляет собой кнопку переключателя изображений, доступные для рисования состояния, а также фон