Android:以编程方式setId提供警告类型为id的预期资源

Android:以编程方式setId提供警告类型为id的预期资源,第1张

概述我不知道为什么会这样: 如果我写下面的代码: TextView textView = new TextView(this);textView.setId(1); 1作为id不工作,给我一个警告,如: 它不符合以下价值观: textView.setId(0+1); // ValidtextView.setId(var++); // Valid even var=0 但无效 textView. 我不知道为什么会这样:

如果我写下面的代码:

TextVIEw textVIEw = new TextVIEw(this);textVIEw.setID(1);

1作为ID不工作,给我一个警告,如:

它不符合以下价值观:

textVIEw.setID(0+1);   // ValIDtextVIEw.setID(var++); // ValID even var=0

但无效

textVIEw.setID(1);     // InvalIDe

有人知道吗?任何人都可以解释这件事吗

解决方法 此警告由 android lint生成.它检查您是否使用正确类型的ID作为标识符.此功能的签名是:

public voID setID(@IDRes int ID)

所以,lint检查你使用的是@IDRes类型的ID(见IdRes annotation),而不是@ColorRes或@StringRes(它检查你是否使用了类R.ID中的常量)

通过使用像0 1或var(BTW,它的结果实际上是0而不是1)这样的表达式,你阻碍了lint来推断参数类型.

总结

以上是内存溢出为你收集整理的Android:以编程方式setId提供警告类型为id的预期资源全部内容,希望文章能够帮你解决Android:以编程方式setId提供警告类型为id的预期资源所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1125779.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存