自定义控件设置id的时候会报错,如:view.setId(100);
解决方法:
方案一:通过调用View.generateViewId()作为setId的参数,但此方案不是最佳方案,因为View.generateViewId()方法必须为SDK版本17及以上才行,否则报错。(但也有可以通过自写一个Utils.generateViewId()解决)
方案二:在res/values/下添加setId.xml(名字可随意)文件,代码如下:
setId.png
在代码中设置id如下:
方案三:在设置类变量的地方加上@android.support.annotation.IdRes 这句话就可以了,如:@android.support.annotation.IdRes int id = 123;
时间: 2024-12-07 23:58:45