如何将监听器添加到切换按钮?

med*_*eda 3 java android oncheckedchanged switch-statement

我试图向Switch添加一个监听器,但由于某种原因它不会收听检查事件.

CompoundButton.OnCheckedChangeListener在我的活动上实现 了这样的:

public class MyActivity extends Activity 
           implements CompoundButton.OnCheckedChangeListener 
Run Code Online (Sandbox Code Playgroud)

这是我的代码

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_layout);

    newOrSavedSwitch = (Switch)  findViewById(R.id.new_or_saved_switch);        
}

@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
   Toast.makeText(this, "Monitored switch is " + (isChecked ? "on" : "off"),
           Toast.LENGTH_SHORT).show();
}
Run Code Online (Sandbox Code Playgroud)

吐司没有显示,我也没有看到logcat中的错误.

Ahm*_*mad 6

你必须注册OnCheckedChangeListener的在CompoundButtonsetOnCheckedChangeListener(CompoundButton.OnCheckedChangeListener listener):

newOrSavedSwitch.setOnCheckedChangeListener(this);
Run Code Online (Sandbox Code Playgroud)