簡體   English   中英

Android中的IntDef批注

[英]IntDef annotation in Android

在Android中,建議開發人員不要使用enum Android支持enum ,而不是enum ,例如@IntDef

我試過這個注釋是一個簡單的項目。 我的代碼如下所示:

@IntDef({APPLE, BANANA})
public @interface Fruit {
}

public static final int APPLE = 1;
public static final int BANANA = 2;

private @Fruit int mFruit;

例如,如果我嘗試將變量mFruit設置為6, mFruit看到消息,提示它必須是APPLEBANANA 很好,效果很好。

當我將此代碼粘貼到第二個應用程序時,我嘗試將變量設置為不同於APPLEBANANA值,它可以工作並且沒有警告消息,並且我能夠構建應用程序。

因此,我的問題是:有什么方法可以禁用或啟用對此注釋的支持? 是什么導致這種不同的行為,有些項目支持它而有些項目不支持呢? 我為兩個項目都使用了相同版本的Android Studio。

您可能需要明確設置保留策略。 查看官方的Android IntDef示例 ,其中將保留策略設置為@Retention(SOURCE)

暫無
暫無

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

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