android.widget.Switch切换事件侦听器?
我已经尝试了的答案中的代码,但是帖子没有提到我试图使用它时遇到的错误 在建议代码的第二行:android.widget.Switch切换事件侦听器?,android,adt,Android,Adt,我已经尝试了的答案中的代码,但是帖子没有提到我试图使用它时遇到的错误 在建议代码的第二行: switch1 = (Switch) findViewById(R.id.switch1); switch1.setOnCheckedChangeListener(new OnCheckedChangedListener() { //This line has the error public void onCheckedChanged(CompoundButton bu
switch1 = (Switch) findViewById(R.id.switch1);
switch1.setOnCheckedChangeListener(new OnCheckedChangedListener() { //This line has the error
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
aTextView.setText("Switch was toggled");
}
});
此错误会触发
类型CompoundButton中的方法setOnCheckedChangeListener(CompoundButton.OnCheckedChangeListener)不适用于参数(新的OnCheckedChangedListener(){})
我怎样才能解决这个问题?我只想在开关更改时调用函数,而不是单击它。谢谢。将监听器设置为这个,因为您的类实现了compoundbutton,如下所示
switch1.setOnCheckedChangeListener(this);
然后在代码中添加此方法
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
boolean = isChecked;
//whatever you want
}
编辑:如果您尚未实现复合按钮。一旦选中更改列表,请使用此
switch.setOnCheckedChangeListener(new OnCheckedChangeListener(
@Override
public void onCheckedChanged(CompoundButton buttonView,
boolean isChecked) {
// TODO Auto-generated method stub
}
});
嗨,请看一看
我们可以用特定的方式来做这件事
switch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
// TODO Auto-generated method stub
if (buttonView.isChecked()){
//do something }
else{
//do something
}
}
});
它仍然不喜欢这样,它说“类型开关的onCheckChangedListener(new onCheckChangedListener(){})方法是未定义的”它是api 14中可用的开关类型有关系吗?@grevin123是的,这是错误的,看到我的新答案了吗?我更新了它直到不工作,我一定是把它放错地方了。更新后的方法是否放在任何特殊位置?@grevin123好的,等等,您的类是否实现了CompoundButton.OnCheckdChangeListener?是的,然后它想将我的活动抽象化,但似乎没有帮助,是OnCheckChangedListener还是OnCheckdChangeListener?对不起,我对android dev很陌生