美文网首页Android技术知识Android知识
View.setId在Android studio下使用报错的解

View.setId在Android studio下使用报错的解

作者: Karma1026 | 来源:发表于2016-05-31 17:48 被阅读1279次

    最近在做一个项目涉及到很多自定义控件的东西,需要用代码动态添加控件到布局里面,然后我想给自定义控件在代码里面设置id的时候,Android studio报错了。在eclipse不会,什么鬼?

    eclipse下的显示:

    网络图片eclipse.png

    AS下会报错:

    AS.png

    在Android Studio中,用代码动态添加控件时,通过View.setId(int id)这个方法为控件添加id时直接赋值一个int类型的参数会“报错”。下面我们来解决它吧!

    • 方案一:通过调用View.generateViewId()作为setId的参数,但此方案不是最佳方案,因为View.generateViewId()方法必须为SDK版本17及以上才行,否则报错。(但也有可以通过自写一个Utils.generateViewId()解决)
    方案一.png

    因为我的最低版本号是14,所以要添加:@TargeApi,不然会报错,个人建议放弃这种方法,因为还有更好的解决办法,请忽略我上面写的东西。。。。

    方案二:在res/values/下添加setId.xml(名字可随意)文件,代码如下:

    setId.png

    在代码中设置id如下:

    方案二.png
    参考文章:http://www.tuicool.com/articles/ye26biF

    相关文章

      网友评论

        本文标题:View.setId在Android studio下使用报错的解

        本文链接:https://www.haomeiwen.com/subject/vkacdttx.html