@IntDef 注释和从其他无法注释的代码返回值或如何暂时禁用注释影响代码?

2024-03-17

我在用IntDef https://developer.android.com/reference/android/support/annotation/IntDef.html from Android 支持注解 https://sites.google.com/a/android.com/tools/tech-docs/support-annotations在我的代码中(但我的问题范围更广,所以请继续阅读:),如下所示:

public class UiLockMode
{
    @IntDef({DEFAULT, NONE, VISIBLE, TRANSPARENT})
    @Retention(RetentionPolicy.SOURCE)
    public @interface AllowedValues {}

    public static final int DEFAULT     = 0;
    public static final int NONE        = 1;
    public static final int VISIBLE     = 2;
    public static final int TRANSPARENT = 3;
}

接下来,我得到了一些用它注释的其他方法,如下所示:

protected void setLockMode(@UiLockMode.AllowedValues int lockMode) {
    ...

那时一切都很好,但是每当我想将其他方法的返回值传递给setLockMode(),就像来自 Parcelable 实现:

private Foo(Parcel in) {
    ...
    setLockMode(in.getInt());

在这种情况下,我的 IDE 抱怨说我只允许使用DEFAULT, NONE, VISIBLE, TRANSPARENT with setLockMode(). But getInt()不是我的方法,所以我无法注释它的返回值并使这一切都满意。我也几乎可以肯定这不是独特的用例,但我未能找到暂时禁用的方法AllowedValues注释从这里抱怨或“转换”返回值getInt()使AllowedValue不抱怨。

所以我的问题是:有什么办法可以解决这个问题吗?也许我遗漏了一些关于注释的明显内容,但也许我应该创建错误报告来让 Google 解决这个问题?

任何意见或想法表示赞赏。


你可以压制IntDef通过使用以下注释来对方法发出 Lint 警告:

@SuppressWarnings("ResourceType")

您还可以对单个语句和整个类禁用这些警告 - 请参阅Android 工具网站 http://tools.android.com/tips/lint/suppressing-lint-warnings以获得进一步的文档。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

@IntDef 注释和从其他无法注释的代码返回值或如何暂时禁用注释影响代码? 的相关文章

  • Toast 消息消失后​​完成活动吗?

    有谁知道 是否有可能对 Toast 消息执行某些操作 在我的情况下完成活动 将被关闭 您只需创建一个Thread持续时间只要Toast显示 然后您就可以完成您的Activity public void onCreate Bundle sav
  • 在 Android 中加密/解密字符串的简单方法

    我的问题是如何加密String String AndroidId Override public void onCreate Bundle savedInstanceState super onCreate savedInstanceSta
  • 使用 JDBC 连接到 PostgreSql 的本地实例

    我在 Linux 机器上有一个正在运行的 PostgreSql 本地实例 当我使用psql来自 shell 的命令我成功登录 没有任何问题 我需要通过 JDBC 连接到 PostgreSql 但我不知道我到底应该传递什么url参数为Driv
  • 如何在android中的谷歌地图上聚焦标记

    我只是想知道我们是否可以关注 Android 应用程序中添加的标记 如果是 怎么办 或者有没有其他方法可以完成这项任务 可以说我使用下面的代码添加了一个标记 map addMarker new MarkerOptions title tit
  • 如何在 60 分钟后删除共享首选项

    我想存储登录数据 但希望在 60 分钟后删除该数据 执行此操作的正确方法是什么 在这 60 分钟内可以关闭 停止 打开应用程序 我不想使用内部数据库 这是我的访问代码SharedPreferences sharedpreferences g
  • Jetpack Compose:制作全屏(绝对定位)组件

    我怎样才能在全屏渲染树的深处制作一个可组合的 类似于Dialog可组合作品 例如 当用户单击图像时 它会显示该图像的全屏预览 而无需更改当前路线 我可以用 CSS 来做到这一点position absolute or position fi
  • Android - 状态栏阻止全屏

    我的应用程序启动时可以全屏正确运行 然而 在最小化然后返回应用程序后 状态栏会弹出 并将我的视图向下推一点 如何防止状态栏移动我的视图 这是我的布局
  • 类更改(例如字段添加或删除)是否保持 Serialized 的向后兼容性?

    我有一个关于 Java 序列化的问题 在这种情况下 您可能需要修改可序列化类并保持向后兼容性 我有丰富的 C 经验 所以请允许我将 Java 与 NET 进行比较 在我的Java场景中 我需要使用Java的运行时序列化机制序列化一个对象 并
  • 从三点求圆心的算法是什么?

    我在圆的圆周上有三个点 pt A A x A y pt B B x B y pt C C x C y 如何计算圆心 在Processing Java 中实现它 我找到了答案并实施了一个可行的解决方案 pt circleCenter pt A
  • 我们如何使用 thymeleaf 绑定对象列表的列表

    我有一个表单 用户可以在其中添加任意数量的内容表对象这也可以包含他想要的列对象 就像在 SQL 中构建表一样 我尝试了下面的代码 但没有任何效果 并且当我尝试绑定两个列表时 表单不再出现 控制器 ModelAttribute page pu
  • titledBorder 标题中的图标

    您好 是否可以在 titledBorder 的标题中放置一个图标 例如以下代码 import java awt GridLayout import javax swing JFrame import javax swing JLabel i
  • Android计算两个日期之间的天数

    我编写了以下代码来查找两个日期之间的天数 startDateValue new Date startDate endDateValue new Date endDate long diff endDateValue getTime star
  • 即使禁用安全性,OAuth 令牌 API 也无法在 Elastic Search 中工作

    我是 Elastic search 新手 使用 Elastic search 版本 7 7 1 我想通过以下方式生成 OAuth 令牌弹性搜索文档 https www elastic co guide en elasticsearch re
  • XML 配置中的 screenName 不起作用

    我刚刚在我的应用程序中添加了对 Google Analytics 分析 的支持 但我无法
  • onPrepareOptionsMenu 复制 ActionBar 中的项目

    当我使用 onPrepareOptionsMenu 添加菜单项时 该菜单项会在操作栏中复制其自身 我正在使用片段并在主要活动的 ActionBar 中创建初始菜单 如下所示 Override public boolean onCreateO
  • 动态更改按钮上的图像视图

    在我的应用程序中 我有按钮和ImageView 当我按下按钮时我想改变ImageView 我的可绘制文件夹中有 5 张图像 按下按钮时 ImageView 根据按钮单击一张一张地更改图像 我想要它的解决方案 感谢任何可以提供帮助的人 维护一
  • 如何从DataSource.Factory获取数据

    我必须调用此方法才能获取所有人员 我根本无法修改这个方法 Query SELECT FROM PERSON TABLE ORDER BY NAME DESC abstract fun getElements DataSource Facto
  • 什么是 Java2D 处理程序线程?

    我创建了一个使用 Hibernate 的示例 java 应用程序 当我进行线程转储时 我观察到一个名为 Java2D Disposer 的奇怪线程 有人能告诉我该线程的功能吗 AWT 系统中的某些实体需要最终确定以释放资源 最突出的例子是j
  • 我想测量 ListView 的高度 (getHight() = 0)

    我无法自己决定任务将是问 我想测量 ListView 的高度 无法捕捉渲染 ListView 的时刻 rssListView getHight 0 public class RSSactivity extends Activity publ
  • Android 的代码覆盖率[重复]

    这个问题在这里已经有答案了 可能的重复 Android测试代码覆盖率 Eclipse https stackoverflow com questions 3282702 android test code coverage eclipse

随机推荐

  • ELM QueryString 解析器无法编译

    我真的很想学习一些 ELM 但是我的思想在查询解析时崩溃了 我的想法是创建一个函数来按名称获取查询字符串值 例如 给定一个查询字符串 name Neuber像这样的函数getParam name 那会返回Neuber 但它在最基本的例子中失
  • wxpython滚动面板不更新滚动条

    我正在使用 winxp 和 wxpython wxpython 3 1 python 2 6 制作一个 GUI 程序 它将文本从 TextCtrl 复制到包含 StaticText 的 ScrollablePanel 中 这一切都工作正常
  • 在内容安全策略中将多个域列入白名单

    我正在编写一个 chrome 扩展 它的白名单中需要有两个域以用于内容安全策略 我已经查看了官方文档 但似乎仍然无法弄清楚正确的语法 以下似乎不起作用 content security policy script src self http
  • AWS NodeJS SDK V3 DynamoDB UpdateItem - TypeError:无法读取未定义的属性“0”

    我正在尝试使用新的适用于 NodeJS 的 AWS SDK V3 在 NodeJS 中进行基本的数据库更新操作 我尝试更新的数据对象如下所示 auth BOOL false username S siegbert secondsLeft N
  • 如何查看和复制 R 默认 Makevars 配置?

    我没有 R Makevars文件和 gt tools makevars user character 0 gt tools makevars site character 0 Yet R必须从某处读取配置 cpp文件包含Rcpp导出到包中s
  • 计算公式的子公式

    选择有公式的单元格后 我们可以在Excel公式栏中选择其公式的一部分并进行计算 按F9 我需要通过 JavaScript API 重现子公式的计算 例如 假设 Cell 的值A1 B1 C1分别是1 2 3 和细胞D1包含一个公式 A1 B
  • 将 2d int 数组转换为 2d double 的最短方法

    我有一个方法只能得到double 我想传递给int 在java中有没有一种简单的方法可以做到这一点 就像这样简单 int iArray 1 2 5 6 double dArray double iArray 不幸的是 转换数组的唯一方法是迭
  • 使声明的名称空间正常工作时遇到问题

    我试图获取用外部 css 编写的命名空间 实际上是两个单独的文件 当我在浏览器上运行该文件时 它不会使用声明的名称空间 我认为该文件正在调用 css 文件 但它没有应用命名空间样式 HTML
  • Fortran 接受来自 C 的字符串(?)

    我觉得这应该是一个简单的问题 但我无法让它发挥作用 我有一些 Fortran 代码 需要如下输入 SUBROUTINE TRACE X Y NAME XX YY EXTERNAL NAME CALL NAME X Y XX YY 我正在尝试
  • ILookup 不应该在 TElement 中(声明)协变吗?

    定义System Linq ILookUp
  • 在两个不同的系统之间同步对象,最好的方法是什么?

    我正在致力于使用基于 XML 的有效负载在 iPhone 和网站之间同步两个业务对象 并且很乐意征求一些关于最佳例程的想法 这个问题的本质是相当通用的 我可以看到它适用于需要在 Web 实体和客户端 桌面 移动电话等 之间同步业务对象的各种
  • 我什么时候会在 ASP.NET 中使用委托?

    我一直在寻找一种方法来使用我能使用的所有工具 并超越我目前的水平 但是 尽管我读过有关委托的内容 但我永远找不到使用它们的地方 例如接口 泛型和很多东西 但我离题了 我希望有人可以向我展示他们何时以及如何使用委托在webasp net c
  • 与 Paramiko 的无密码 SSH 连接失败,而 SSH 可以正常连接

    我打算在客户端和服务器之间使用 SSH 密钥创建无密码连接 使用 paramiko 我最终得到了认证异常 通过 Popen 使用标准 SSH 我可以毫无问题地连接 对于 Paramiko 我使用以下代码 client paramiko SS
  • jQuery 中的简单淡入和可见性

    我正在尝试更改 css 属性visibility一个 div 到visible用 jQuery fadeIn 过渡 这是我的代码 a click function test fadeIn slow function this css vis
  • 伪终端中的 Ncurses 程序

    在我不断尝试了解伪终端如何工作的过程中 我编写了一个小程序来尝试运行 bash 问题是 我的断线似乎已经关闭 shell 提示符仅在我按 Enter 键后出现 此外 我仍然无法正确使用 ncurses 程序 例如 vi 谁能告诉我如何为此设
  • Swift - 在 NSArray 中插入对象/项目/添加对象/项目

    我有这个代码 var NToDel NSArray var addInNToDelArray Test1 Test2 如何添加addInNToDelArray in NToDel NSArray 你不能 NSArray是一个不可变数组 因此
  • 如何等待多个期货?

    假设我有几个 future 并且需要等到either其中任何一个都失败了or他们都成功了 例如 假设有 3 个期货 f1 f2 f3 If f1成功并且f2失败我不等待f3 并返回failure给客户 If f2失败同时f1 and f3仍
  • Ruby on Rails 中的社交媒体共享按钮

    我正在尝试在 Ruby on Rails 的博客应用程序中添加自定义社交媒体共享按钮 对我来说重要的是 将显示一个用于共享 帖子 的弹出窗口 这意味着我想包含 Javascript 不幸的是这段代码不起作用 a a
  • 向旋转矩形添加“假”抗锯齿

    我正在使用 Corona SDK 它最近禁用了抗锯齿功能 并且无法重新启用它 我有几个使用旋转矩形和线条的应用程序 并且想要一种不看起来锯齿状的方法 此图显示了差异 有没有办法在 Corona 中为这些矩形添加某种抗锯齿功能 我更喜欢抗锯齿
  • @IntDef 注释和从其他无法注释的代码返回值或如何暂时禁用注释影响代码?

    我在用IntDef https developer android com reference android support annotation IntDef html from Android 支持注解 https sites goo