当前位置: 代码迷 >> Android >> OnClickListener出大错了,该如何处理
  详细解决方案

OnClickListener出大错了,该如何处理

热度:40   发布时间:2016-04-28 06:22:12.0
OnClickListener出大错了
  private CheckBox.OnCheckedChangeListener mCheckBoxChanged = 
    new CheckBox.OnCheckedChangeListener(){} 

这段代码在eclipse中执行的时候很正常,但是,但是~~~
这段代码
    private Button.OnClickListener myClickListener = //这行提示错误:Illegal modifier for parameter myClickListener; only final is permitted
        new Button.OnClickListener() {}//这里提示这个:The type new View.OnClickListener(){} must implement the inherited abstract method View.OnClickListener.onClick(View)


为啥前面checkbox没有提示错误,这个就有错误了,为什么为什么~~~,希望会的牛人们知道知道
------解决方案--------------------
导包了没?ctrl+1试试
------解决方案--------------------
引用:
引用:ctrl+shift+o把需要的包都导进去了,不行好像有两个onClikcListener的包的,你删掉,手动导那个view.View的试试



支持一下,确实有这种情况存在,我碰到过,当时也纠结了。
------解决方案--------------------
报错的意思是,只有final 修饰才可以引用,楼主为什么要这样定义监听事件呢?
------解决方案--------------------
引用:
引用:报错的意思是,只有final 修饰才可以引用,楼主为什么要这样定义监听事件呢?
直接通过myButton.setOnClickListener(new OnClickListener(){})虽然可以,因为checkbox有一个例子是这样定义监听的,我想尝试下这样,但是错问题了


你定义为final试试的,我这边也试试的
------解决方案--------------------


 Button.OnClickListener myClickListener =  new Button.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

}};

------解决方案--------------------
这都是成功的代码的
------解决方案--------------------
你看看你加载的JAR包是不是有问题的
------解决方案--------------------
判断着几点 
1,
android.view.View.OnClickListener
包是否有
2, 是否引错包引成
android.content.DialogInterface.OnClickListener
3, 覆写该方法
abstract void  onClick(View v)
Called when a view has been clicked.

------解决方案--------------------
Button有内没有这个OnCilckLinstener内部类吧!我没这么写过!
至于第二行就是没有实现方法,吧Onlick函数填上就行了!