簡體   English   中英

在IntelliJ IDEA中使用“實現方法”時,參數名稱錯誤

[英]Bad param names when using “Implement methods” in IntelliJ IDEA

我正在使用IntelliJ IDEA進行Android開發。 但有一件事讓我煩惱。 當我使用“實現方法”功能時,它會生成以下內容:

new OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
    }

    @Override
    public void onNothingSelected(AdapterView<?> adapterView) {
    }
}

參數名稱不一致,我希望看到這樣的東西:

new OnItemSelectedListener() {
    @Override
    public void onItemSelected (AdapterView<?> parent, View view, int position, long id) {
    }

    @Override
    public void onNothingSelected(AdapterView<?> parent) {
    }
}

如何讓IDEA生成正確的參數名稱?

在代碼完成中需要源代碼才能獲得正確的參數名稱。 Android SDK直到4.0平台版本(API版本14)才捆綁源,因為此時源代碼可以直接使用:

來源

如果您使用的是較舊的平台版本, 請參閱我的答案以獲取解決方法

我懷疑你沒有附加源,所以IDEA只使用.jar來生成代碼。 已編譯的類沒有關於參數名稱的信息。

所以,只需附上來源。

我對spring BeanPostProcessor有完全相同的問題。 源是通過Maven附加的,但是intelliJ仍然在命名方法參數os而不是beanbeanName 當我導航到課程時,我可以看到源和常規名稱。

編輯 - 通過重新啟動IntelliJ解決了問題:一旦連接了源,您需要重新啟動。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM