当重写Android方法时,Eclipse会插入arg0,arg1等而不是正确的参数名称

时间:2014-01-15 14:32:43

标签: android eclipse ide

当我从Eclipse中的Android类重写方法时,我得到了无用的参数名,如“arg0”,“arg1”等。例如,当我从SQLiteOpenHelper覆盖方法时,我得到:

@Override
public void onCreate(SQLiteDatabase arg0) {
    // TODO Auto-generated method stub
}

@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
    // TODO Auto-generated method stub
}

我发现了关于此的各种帖子,但是没有一种可接受的解决方案似乎适合我。它也很奇怪,因为它似乎只在某些时候发生。例如,上述测试中的构造函数具有正确命名的参数。

在Android SDK Manager for Android 4.4.2中安装了“Android SDK文档”。我是否仍然需要以某种方式手动附加文档(甚至源代码?)才能可靠地工作,如果是这样,我该如何处理?

谢谢!

1 个答案:

答案 0 :(得分:5)

正如评论中提到的@ greg-449, Android来源需要附加才能实现。

按照this link中的步骤似乎解决了这个问题。

如果将来链接中断,步骤为:

  1. 下载" Android SDK的来源"使用SDK Manager

  2. 右键单击Eclipse Package Explorer中的android.jarAndroid {version}节点下),然后单击属性

  3. 在" Java源附件"下,输入下载的源目录的路径,该路径与 {sdk} / sources / android- {version} 一致。

  4. 然后我明白了:

    @Override
    public void onCreate(SQLiteDatabase db) {
        // TODO Auto-generated method stub
    }
    
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // TODO Auto-generated method stub
    }
    

    更新:作为参考,Android Studio中出现了类似的问题(撰写本文时为v0.4.2)。来源可以通过文件附加 - >其他设置 - >默认项目结构,选择SDKs,android平台并在" Sourcepath"中添加源代码。标签