Я только что изменил фон aToggleButton
, и теперь я хочу изменить текст ON / OFF, который появляется вместе с ним. Как это сделать проще всего?
android
togglebutton
Стайлер1972
источник
источник
android.support.v7.widget.SwitchCompat
некоторыми OEM-производителями, которые я проверял!В примере, на который вы ссылаетесь, они меняют его на День / Ночь, используя
android:textOn
иandroid:textOff
источник
Установите XML как:
<ToggleButton android:id="@+id/flashlightButton" style="@style/Button" android:layout_above="@+id/buttonStrobeLight" android:layout_marginBottom="20dp" android:onClick="onToggleClicked" android:text="ToggleButton" android:textOn="Light ON" android:textOff="Light OFF" />
источник
В некоторых случаях вам нужно принудительно обновить представление, чтобы оно работало.
toggleButton.setTextOff(textOff); toggleButton.requestLayout(); toggleButton.setTextOn(textOn); toggleButton.requestLayout();
источник
requestLayout()
не работает, ноsetChecked()
работает.Похоже, вам больше не нужен toggleButton.setTextOff (textOff); и toggleButton.setTextOn (textOn) ;. Текст для каждого включенного состояния будет изменяться путем простого включения соответствующих характеристик xml. Это заменит текст включения / выключения по умолчанию.
<ToggleButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/toggleText" android:textOff="ADD TEXT" android:textOn="CLOSE TEXT" android:layout_centerHorizontal="true" android:layout_marginTop="10dp" android:visibility="gone"/>
источник
Да, вы можете изменить кнопку включения / выключения
android:textOn="Light ON" android:textOff="Light OFF"
Обратитесь за дополнительной информацией
http://androidcoding.in/2016/09/11/android-tutorial-toggle-button
источник
Сделать это можно двумя способами:
`android:textOff="TEXT OFF" android:textOn="TEXT ON"`
public void toggleState(View view) { boolean toggle = ((ToogleButton)view).isChecked(); if (toggle){ ((ToogleButton)view).setTextOn("TEXT ON"); } else { ((ToogleButton)view).setTextOff("TEXT OFF"); } }
PS: это работает для меня, надеюсь, это сработает и для вас
источник