の背景を変更したToggleButton
ばかりですが、表示されるON / OFFテキストを変更しようとしています。これを行う最も簡単な方法は何ですか?
の背景を変更したToggleButton
ばかりですが、表示されるON / OFFテキストを変更しようとしています。これを行う最も簡単な方法は何ですか?
回答:
以下を使用して、コードからテキストを設定できます。
toggleButton.setText(textOff);
// Sets the text for when the button is first created.
toggleButton.setTextOff(textOff);
// Sets the text for when the button is not in the checked state.
toggleButton.setTextOn(textOn);
// Sets the text for when the button is in the checked state.
xmlを使用してテキストを設定するには、以下を使用します。
android:textOff="The text for the button when it is not checked."
android:textOn="The text for the button when it is checked."
android.support.v7.widget.SwitchCompat
確認した一部のOEMでは機能しません。
あなたはへのリンクの例では、彼らが使用してデイ/ナイトにそれを変更しているandroid:textOn
と、android:textOff
場合によっては、ビューを機能させるために、ビューを強制的に更新する必要があります。
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
これは、次の2つのオプションで実行できます。
オプション1:xml属性を設定する
`android:textOff="TEXT OFF"
android:textOn="TEXT ON"`
オプション2:プログラムで
属性onClickを設定します:methodNameHere(私のものはtoggleStateです)次に、次のコードを記述します。
public void toggleState(View view) {
boolean toggle = ((ToogleButton)view).isChecked();
if (toggle){
((ToogleButton)view).setTextOn("TEXT ON");
} else {
((ToogleButton)view).setTextOff("TEXT OFF");
}
}
PS:それは私のために働きます、それがあなたのためにも働くことを願っています