Android On/Offボタン(Switch/Toggle)

android-onoff.png

昔はToggleと呼ばれていたが、最近はSwitchと呼ばれているらしい。
Switch…Android14以上で使用可能
ToggleButton….Android14未満ならこれを使う
どっちもCompoundButtonクラスが親クラス
こんな風にすると両立できます

Android 14以上と未満を両立するコード

CompoundButton mOnOffButton;
if (Build.VERSION.SDK_INT >= 14) {
            mOnOffButton=new Switch(mActivity);
        }else{
            mOnOffButton=new ToggleButton(mActivity);
        }

デフォルトでONにするには

setChecked()関数を使用します

mOnOffButton.setChecked(true);

SwitchPreference

デザイン上の注意

ボタンとラベルを近くにしよう

状況によってはラベルとボタンの位置が離れることがあります。
ゲシュタルトのグルーピングの法則的に
ラベルとボタンは近い位置にして仲間ですよアピールしたほうがユーザーにとってわかりやすいでしょう。
なので文字を右揃えにします。

if (Build.VERSION.SDK_INT >= 14) {
            mSwitch=new Switch(activity);
        }else{
            mSwitch=new ToggleButton(activity);
        }
        mSwitch.setText("ラベル");
        mSwitch.setGravity(Gravity.END);//<-文字を右揃えにする

サポートサイト Wikidot.com