我目前正在使用Android开发一个小型测试项目,我得到了臭名昭着的@Override错误:
KvizActivity类型的onBackPress()方法必须覆盖或实现 超类型方法。
以下是导致它的代码:
public class KvizActivity extends Activity {
/** onCreate(), onDestroy(), etc... */
@Override
public void onBackPress() {
}
}
现在我知道你在想什么:已经有很多这样的问题和答案。我知道,我读了所有这些,但是,我无法摆脱它。我知道它的核心原因是Eclipse使用的是JDK 1.5而不是1.6或更高版本。
但我已经完成了所有这些:去项目 - > 属性 - > Java编译器,我将其设置为 1.6 。错误仍然存在。
然后我去了 Window - > 偏好设置 - > Java编译器并将其设置为 1.6 ,因此它将是全局的,但仍然存在。然后我设置了项目特定设置,即使我已经这样做了,我重试了它。没有。我清理了项目并使用了重建但仍然存在。
我无法想到要做的其他事情。
这是我的Java版本:
Java version "1.7.0_01"
Java(TM) SE Runtime Environment (build 1.7.0_01-b08)
Java HotSpot(TM) Client VM (build 21.1-b02, mixed mode, sharing)
我有Eclipse 3.7.1 ,我相信这是最新的。
我希望任何人都能对此有所了解。
答案 0 :(得分:3)
您要覆盖的方法是onBackPressed()
。要使@Override
起作用,方法签名必须与父类中声明的方法匹配。在这种情况下,您拼错了方法名称。