- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我有一个枚举:
public enum AppEnums {
SERVICE_ERROR,
CONNECTION_ERROR;
}
我想在 Android Annotation 的 intDef 中使用它:
@IntDef({AppEnums.CONNECTION_ERROR, AppEnums.SERVICE_ERROR})
public @interface ServiceErrors {
}
错误显示:
incompatible types found, required: 'long'
我能用这种不兼容性做些什么?
我不想手动处理 AppEnum 参数的值,Enum 通常会自动创建值。 AppEnums.CONNECTION_ERROR.ordinal()
返回枚举参数的 int 值,但在这里不起作用。
最佳答案
IntDef
注释的主要思想是使用一组 int
常量,如 enum
,但 没有 枚举
。在这种情况下,您必须手动声明所有常量。
@IntDef({Status.IDLE, Status.PROCESSING, Status.DONE, Status.CANCELLED})
@Retention(RetentionPolicy.SOURCE)
@interface Status {
int IDLE = 0;
int PROCESSING = 1;
int DONE = 2;
int CANCELLED = 3;
}
您可以查看详细示例here .
关于java - 枚举和android注解intDef,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32032503/
我不清楚如何使用 @Intdef 将它设为这样的标志: @IntDef( flag = true value = {NAVIGATION_MODE_STANDARD, NAVIGATION_M
https://developer.android.com/reference/android/support/annotation/IntDef.html 我正在寻找一个如何定义局部变量的示例。 我
我正在尝试使用 android.content.pm.ActivityInfo 中的 @ScreenOrientation。它的声明: @IntDef({ SCREEN_ORIENTA
我正在尝试用 IntDef 注释替换源代码中的一些枚举。我一直在关注this文档。 我有一个用于保存 ViewMode 的变量,该变量以前是一个枚举。现在我已将其更改为如下所示。 @Retention
关于通过 Intent 发送 IntDef 的最佳方式有什么想法吗? ps: 如果你简单地将它作为一个 int 发送,你就失去了类型检查,这是使用 intdef 的主要目标 最佳答案 您的 IntDe
我有这个代码示例: class MeasureTextView: TextView { constructor(context: Context?) : super(context)
在Android中,建议开发者不要使用enum。 Android 不支持 enum,而是支持一些注释,例如 @IntDef。 我试过这个注解是一个简单的项目。我的代码如下所示: @IntDef({AP
如何使用@IntDef 避免参数化枚举。 我想保留一些与每个枚举/类型关联的静态细节(例如关联的 URl 、关联的可绘制对象等)。 TYPE_ONE(R.string.res, Urls.URL1),
以下面的例子为例。 错误信息 Must be one of: DownloadRequest.STATUS_UNKNOWN, DownloadRequest.STATUS_DOWNLOADING, D
这样的一种情况是从 Bundle 中读取一个 int 并将其存储到受 @IndDef 注释限制的变量中: public class MainActivity extends ActionBarActi
我正在研究如何更新一些现有代码以使用新的 Android LiveData 架构模式。希望代码示例是不言自明的,我正在努力让 @IntDef/@Interface 处理实时数据。我很高兴在 ViewM
我想要一个只接受 2 个值的函数,比如说一个和两个。我可以为它使用枚举,但对于 Android,使用常量 (@IntRef) 被认为更好。 所以我这样做了: @Retention(RetentionP
我的库中有以下代码: @Documented @IntDef({OpacityAnimationType.NONE, OpacityAnimationType.BLINKING,
我知道将常量与枚举进行比较时,常量占用更少的空间并且可以是原始的。我在研究@Intdef annotation在 android 中,有人可以告诉我使用 @Intdef 还是使用枚举更好的存储。现在是
使用 Android Studio 构建 Android 版本的 React Native 应用。我刚收到 'error: cannot find symbol class IntDef' 在以下代码
将 JacksonAnnotations 与 Android 支持注释一起使用。我的 POJO 是: @JsonIgnoreProperties(ignoreUnknown = true) publi
考虑这个类: public class MyClassOfMystery { public static final int NO_FLAGS = ~0; public static
我正在尝试在Android开发中实现@IntDef注解。 第一种方法:在 Constant.java 类中分隔的定义看起来很棒: public class Constant { @IntDef(
my Android Studio screenshot Android Studio 构建失败并显示消息:找不到符号“@IntDef”,但是 IDE 中显示的 java 代码没有显示错误,正如您在链
这是我的代码: 常量.kt package sample.com.sample_app object Const { const val NAVIGATION_MODE_STANDARD =
我是一名优秀的程序员,十分优秀!