Android 动态设置View的id——setId
2017-02-15 16:51
1496 查看
问题
动态给自定义view设置id,有时候会报错,下面我将带头冲锋(德邦跑错场了。。。。)AndroidStudio会报错:
因为在sdk17(4.2.2)以上可以使用myView.setId(View.generateViewId())才行,为了兼容,里面的id必须使用静态int类型。
解决的三种方法
1、sdk17(4.2.2以上)
//设置View.generateViewId() simpleDraweeViewicon.setId(View.generateViewId());
2、写在配置xml文件里
ids.xml
<?xml version="1.0" encoding="utf-8"?> <resources> <item name="layoutadd" type="id"/> </resources>
代码中设置:
AppRelativelayout mRelative = new AppRelativelayout(mContext); mRelative.setId(R.id.layoutadd);
3、神奇的注解帮你添加
将你所想定义的id按照下例写在代码中:@android.support.annotation.IdRes int TAG1401 = 1000; int TAG1402 = 1001; int TAG1403 = 1002; int TAG1404 = 1003; int TAG1405 = 1004; int TAG1406 = 1005; int TAG1407 = 1006;
在想要设置id的地方直接设置:
AppRelativelayout mRelative = new AppRelativelayout(mContext); mRelative.setId(TAG1401);
相关文章推荐
- Android - 动态设置自定义View的id - setId
- Android 动态添加View 并设置id
- Android 动态设置view的id,id设置为数字
- android view重写onTouchEvent事件更换背景(android 动态设置背景图 )
- Android 动态设置View 的问题
- Android动态setId,避免id重复
- 解决Android当中GridView的Item子控件中有ImageView图片大小不一致问题,动态设置ImageView控件大小
- Android中动态设置TextView的颜色
- android 如何动态设置View的margin和padding
- android 如何动态设置View的margin和padding
- Android程序中代码动态设置Textview文字的大小解决px转dp的问题
- 【原创】如何在Android中为TextView动态设置drawableLeft等
- android 中View.setID,与getID
- Android 如何根据设置文字大小动态计算TextView长度、动态设置Relativelayout布局
- Android动态设置View的位置和大小
- android 的TextView空间动态设置字体颜色
- 给一个android的TextView设置背景颜色动态显示,到那时好像不起作用。我是少了什么东西么?
- Android中动态设置TextView的颜色
- android开发--动态设置键盘弹出与view的交互样式
- 解决Android开发中ViewPager动态设置PagerAdapter时第二次进入Fragment内容不显示的问题