【发布时间】:2010-12-13 06:47:10
【问题描述】:
任何时候我必须将我的项目重新导入 Eclipse(如果我重新安装了 Eclipse,或者更改了项目的位置),几乎所有我的重写方法的格式都不正确,从而导致错误:
该方法必须覆盖超类方法
值得一提的是,无论出于何种原因,对于 Android 项目,方法参数值并不总是填充,因此我必须自己手动填充它们。例如:
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
//These arguments have their correct names
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
}
});
最初会这样填充:
list.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
//This methods arguments were not automatically provided
public void onCreateContextMenu(ContextMenu arg1, View arg2,
ContextMenuInfo arg3) {
}
});
奇怪的是,如果我删除我的代码,并让 Eclipse 自动重新创建该方法,它会使用我已经拥有的相同参数名称,所以我真的不知道问题出在哪里,除了自动格式化适合我的方法。
不得不手动重新创建我所有被覆盖的方法,这变得相当痛苦。如果有人能解释为什么会发生这种情况或如何解决它。我会很高兴的。
也许是因为我格式化方法的方式,这些方法在另一个方法的参数中?
【问题讨论】:
-
请勾选此项,它解释了override的使用。我相信这种做法对一切都非常重要,不仅对这种情况尤其如此。 stackoverflow.com/questions/94361/…
标签: java android eclipse overriding superclass