最近碰倒一个问题,就是在给控件set id的时候回报错,那么参数直接给一个int或者long型的变量还是会报错,看api只是说这个参数的作用是:a number used to identify the view。看到这还是不知道为什么会报错。虽然编译也能通过,但是在代码里依然报错,我这种有强迫症的人是一定要想办法解决这个问题的。
说到这就要吐槽一下百度,搜了挺长时间也没找到关于这个问题的答案,全都是写其他的不相关的内容,而且大家都是互相抄袭,原创内容比较少,最后还是使用google,在第一页的第一条就是在Stackoverflow上关于这个问题的一个回答:设置一个变量如下
private @android.support.annotation.IdRes int id = 1;
然后用这个变量作为setId()的参数就不会报错了.