button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
db.update();
}
});
第1行--->它建议将setonclicklistener转换为setkeylistener 并在第3行删除覆盖注释但它应该在那里找不到错误帮助我...
答案 0 :(得分:3)
在@Override
上使用public void onClick(View v)
并非强制要求,但可能是验证您没有违反其签名的充分理由。但是,如果您选择使用@Override
,请确保您的项目符合Java 1.6。如果没有,您可能会得到“...必须覆盖超类方法”错误。要启用此功能,请右键单击Eclipse中的项目文件夹,然后选择底部的Properties
。然后转到Java Compiler
并从顶部的下拉菜单中选择1.6
。{/ p>
另请确保您使用Compiler compliance level
s View
:
OnClickListener
答案 1 :(得分:0)
使用
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
db.update();
}
});
并确保您要导入import android.view.View.OnClickListener;
包
答案 2 :(得分:0)
您可能需要在OnClickListener前添加View,如下所示:
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
db.update();
}
});
另一个潜在的问题:OnClick中的代码将在UI线程中运行,更新数据库可能是一个很长的阻塞操作,所以你不应该在UI线程中这样做。而是创建一个新线程。