●android.widget.ToggleButton


他のプラットフォームではあまり聞きなれない言葉のトグルボタンとは何だろうという感じですが、
いわゆるボタンを押すとON・OFFの切り替えができるウィジットでした。




■トグルボタンを表示・非表示にする

android.widget.ToggleButton tb=(android.widget.ToggleButton)findViewById(R.id.toggleButton);

if (android.widget.ToggleButton.VISIBLE == tb.getVisibility()){
    //もし見えたら、見えなくする
    tb.setVisibility(android.widget.Button.INVISIBLE);
}else {
    //見えなかったら、見えるようにする
    tb.setVisibility(android.widget.Button.VISIBLE);
}

■トグルボタンを有効・無効にする

android.widget.ToggleButton tb=(android.widget.ToggleButton)findViewById(R.id.toggleButton);

if (true == tb.isEnabled()){
    //有効なら無効化する
    tb.setEnabled(false);
}else {
    //無効なら有効化する
    tb.setEnabled(true);
}


■ON OFFが切り替わった時のイベントを取る

android.widget.ToggleButton tb=(android.widget.ToggleButton)findViewById(R.id.toggleButton);

tb.setOnCheckedChangeListener(new android.widget.CompoundButton.OnCheckedChangeListener() {
    public void onCheckedChanged(android.widget.CompoundButton _tb,boolean checked){
        if(checked){
            android.util.Log.d("tb","ON");
        }else {
            android.util.Log.d("tb","OFF");
        }
    }
});

トグルボタンを押した場合ではなくても、ON・OFFが切り替わったタイミングで呼び出されます


■ON OFFを取得する

tb.isChecked()

■ON OFFを切り替える

ONにする
tb.setChecked(true);

OFFにする
tb.setChecked(false);

■ON OFF時の文字を変える

tb.setTextOn("おんです");
tb.setTextOff("おふです");
tb.setChecked(true);

文字を設定した後にsetCheckedでON/OFFを設定することにより画面の文字が更新されます。


▲トップページ > android