Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
android.widget.Switch切换事件侦听器?_Android_Adt - Fatal编程技术网

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很陌生