[英]Android: programmatically setId is gives a warning Expected resource of type id
此警告由android lint生成。 它会检查您是否使用正确类型的ID作为标识符。 此功能的签名是:
public void setId(@IdRes int id)
因此,lint检查你正在使用@IdRes
类型的id(参见IdRes注释 ),而不是@ColorRes或@StringRes (它检查你使用的是类R.id
)
通过使用像0+1
或var++
(BTW,它的结果实际上是0而不是1)这样的表达式,你会妨碍lint来推断参数类型。
你得到一个警告,因为设置你自己的ID可能很危险,你可以设置与现有的xml元素相同的ID,这显然会发生碰撞并导致问题。 请改用View.generateViewId()
来防止这种情况发生。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.