java - 获取带有@StyleableRes 注释的StyledAttributes。抑制警告

标签 java android annotations android-studio android-resources

一边看答案here ,我在线上遇到了问题:

TypedArray ta = obtainStyledAttributes(R.style.MyCustomStyle, attrs);

Android Studio 似乎不允许我在没有收到警告的情况下传入不是来自 R.styleable 资源的 int。

它告诉我它需要一个样式类型的资源,我假设这意味着我正在调用的代码已经用 @StyleableRes annotation 注释了

Expected resource of type styleable

读取 R.style.{x} 中定义的值的最佳做法是什么?链接帖子上接受的答案有效并编译,但我不知道如何抑制警告。既然有警告,打压安全吗?如果是,怎么办?

最佳答案

我认为抑制这种情况的正确方法是:

@SuppressWarnings("ResourceType")

当我按下 Alt-Enter 以提出警告修复并选择检查“常量和资源类型不匹配”选项> 抑制类时,我得到了这个(附截图)enter image description here .

它对我有用。

此检查的 ID 可能已更改,因为您编写了所引用的任何代码;我简要地浏览了提交日志,但找不到对它的引用。

关于java - 获取带有@StyleableRes 注释的StyledAttributes。抑制警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26360954/

相关文章:

java转换二进制/本地/十六进制 double 值

android:在imageview中拉伸(stretch)图像以适应屏幕

java - 如何在安卓平板电脑中渲染鼠标移动

java - 验证变量为空警告

Java自定义验证注解

java - HIbernate注解@GeneratedValue策略类型的区别

java - 如何在Java中以4x4x4 = 64形式打印指数

java - Libgdx 滚动 TiledMaps

java - jsoup 输出编码问题

android - Uncaught ReferenceError : AFMA_getSdkConstants is not defined