Właśnie zmieniłem tło aToggleButton
, a teraz chcę zmienić tekst WŁ. / WYŁ., Który się pojawi. Jaki jest najłatwiejszy sposób na zrobienie tego?
android
togglebutton
styler1972
źródło
źródło
android.support.v7.widget.SwitchCompat
niektórymi producentami OEM. Sprawdziłem to!W przykładzie, do którego tworzysz łącze, zmieniają go na Dzień / Noc za pomocą
android:textOn
iandroid:textOff
źródło
Ustaw XML jako:
<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" />
źródło
W niektórych przypadkach musisz wymusić odświeżenie widoku, aby działał.
toggleButton.setTextOff(textOff); toggleButton.requestLayout(); toggleButton.setTextOn(textOn); toggleButton.requestLayout();
źródło
requestLayout()
nie działa, alesetChecked()
działa.Wygląda na to, że nie potrzebujesz już toggleButton.setTextOff (textOff); i toggleButton.setTextOn (textOn) ;. Tekst dla każdego przełączonego stanu zmieni się, po prostu uwzględniając odpowiednie cechy XML. Spowoduje to zastąpienie domyślnego tekstu WŁ. / WYŁ.
<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"/>
źródło
Tak, możesz zmienić przycisk włączania / wyłączania
android:textOn="Light ON" android:textOff="Light OFF"
Więcej informacji
http://androidcoding.in/2016/09/11/android-tutorial-toggle-button
źródło
Możesz to zrobić za pomocą 2 opcji:
`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: to działa dla mnie, mam nadzieję, że działa również dla Ciebie
źródło