2015-06-10 22 views
4

我要生成的意見,以及時自動生成的getter和setter如何產生的意見,以及時自動生成的getter和setter Android Studio中

Android的工作室:

/** 
* username 
*/ 
private String name; 

public String getName() { 
    return name; 
} 

我想:

/** 
* username 
*/ 
private String name; 

/** 
* Get username 
* @return username 
*/ 
public String getName() { 
    return name; 
} 
+0

請正確解釋 –

+0

標記爲「不清楚你要求」 –

+0

試着儘可能清楚地說明你的情況。例如,包括預期結果的使用示例,以便我們瞭解您的問題。 –

回答

1

的能力創建自定義設置器&通過功能請求IDEA-28206 Allow customization of generated getter/setter,在IntelliJ IDEA v14.1(特別是構建141.177)中添加了getter模板。我不知道該更改是否已合併到Android Studio分支中。

隨着(新)功能,當你觸發插入的getter/setter意向,該對話框讓你選擇要使用的模板:

enter image description here

您可以單擊瀏覽按鈕enter image description here到創建一個新的模板。它使用Velocity模板語言。您可以創建一個包含所需評論的模板。在票中,有人有posted their custom setterticket to document the feature仍在等待處理。

最後,有一個打開的功能請求(IDEABKL-4910 Javadocs for getters/setters)在生成setter和getter時自動包含Javadoc。但是,這是積壓的,現在IDEA-28206已經實施,我懷疑這會得到任何關注。

0

我相信這在java中不可行,但您可以通過以下步驟更改註釋/代碼模板。

  1. 創建一個類的字段
  2. 點擊Alt + Shift + S鍵
  3. 選擇選項生成getter和setter ..你創建
  4. 查找鏈接,一個領域的
  5. 選擇複選框代碼模板在對話框的底部並點擊。
  6. 現在您可以啓用項目特定設置選項並根據需要更改註釋/代碼模板。
  7. 單擊應用並確定
  8. 選擇選項生成方法註釋並單擊確定。現在,getter和setter將根據您的模板更改創建。

請嘗試使用上述註釋歸檔您的想法。

0

它不受Android Studio支持(至少在1.2版本中)。
你可以下載一個插件(首選項/插件)如JavaDoc的這增加下附加選項「生成...」菜單,讓你產生選定或javadoc註釋的所有字段/方法

5

我知道答案已被接受爲這篇文章,但我遇到了同樣的問題,雖然我會給它一個鏡頭以及。

由於馬克解釋如何create you own custom settings on the getters and setters options,我試圖使用Intellij's settingsgetterssetters並定製它的方式我想成爲。

這是消氣模板的樣子對我說:

/** 
*@return Gets the value of $field.name and returns $field.name 
*/ 
publiC## 
#if($field.modifierStatic) 
    statiC## 
#end 
$field.type ## 
#set($name = $StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project)))) 
#if ($field.boolean && $field.primitive) 
    #if ($StringUtil.startsWithIgnoreCase($name, 'is')) 
    #set($name = $StringUtil.decapitalize($name)) 
    #else 
    is## 
#end 
#else 
    get## 
#end 
${name}() { 
    return $field.name; 
} 

爲了說明,我用$field.name作爲評論的價值和使用的常規註釋結構放置方法生成開始前值。

如:

/** 
    *@return Gets the value of $field.name and returns $field.name 
    */ 

這是我的二傳手模板看起來像:

/** 
* Sets the $field.name 
    You can use get$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project)))() to get the value of $field.name 
*/ 
#set($paramName = $helper.getParamName($field, $project)) 
publiC## 
#if($field.modifierStatic) 
    statiC## 
#end 
void set$StringUtil.capitalizeWithJavaBeanConvention($StringUtil.sanitizeJavaIdentifier($helper.getPropertyName($field, $project)))($field.type $paramName) { 
    #if ($field.name == $paramName) 
    #if (!$field.modifierStatic) 
     this.## 
    #else 
     $classname.## 
    #end 
    #end 
    $field.name = $paramName; 
} 

而對於$field.name值是一樣的人在吸氣。 您可以隨時以這種方式自定義評論結構,並且如果需要,還可以使用其他屬性,如$classname.##

這只是我如何做我comments enabling in Android Studio when doing a generate getters and setters for the the fields.

希望一個小例子,這可以幫助別人的未來。祝你好運。

+0

你搖滾! 您能否告訴您使用哪種腳本或語言編寫這些模板? 我們是否可以在字段中添加評論,作爲此模板中getter/setter註釋的一部分? –

+0

我們實際上可以在android studio中創建它。我修改了setter中的一些項目,getter auto自動生成了它的評論。我們在Android Studio中有一個選項.. :) – mike20132013

+0

我想你誤解了我的評論。 我已經嘗試了你所做的和它的工作良好,並且能夠自動生成評論。 假設在POJO類中有一個字段,如 //護照的唯一ID 字符串ID; /** *返回id *返回java.lang.String的值*/ public String getId(){ return id; } /** * 設置ID *可以使用的getId()來設置ID * * PARAM ID java.lang.String中 */ 公共無效SETID(字符串ID){ 這個值。id = id; } 你可以看到getter和setter完成了他們的工作。 –

相關問題