web-dev-qa-db-ja.com

ハンドラーを介してトグルボタンの状態を取得する

ToggleButtonの状態にアクセスできるようにする必要があるのは、ToggleButtonの特定の状態のメソッドを作成する方法がないということです。だからここに私が今のところいます:

ToggleButton syncSwitch = (ToggleButton)findViewById(R.id.toggleButton1);
syncSwitch.setOnClickListener(new OnClickListener(){
    @Override
    public void onClick(View view){
        Toast.makeText(getApplicationContext(), "Click!", Toast.LENGTH_SHORT).show();
    }
});

ここで必要なのは、ハンドラーにToggleButtonの状態を通知できるあるタイプのブールメソッドだけです。

19
nkcmr

「特定の状態のメソッドを作成する」とはどういう意味ですか? isChecked() を使用して状態を取得できます。

38
Nikolay Elenkov

次のようにtogglebtn.setOnCheckedChangeListenerリスナーを使用して確認することもできます。

ToggleButton toggle = (ToggleButton) findViewById(R.id.toggle);
toggle.setOnCheckedChangeListener(new OnCheckedChangeListener() {

@Override
    public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
                Toast.makeText(getApplicationContext(),
                        String.valueOf(buttonView.isChecked()), Toast.LENGTH_SHORT).show();
            }
        });
14
Lalit Poptani