Android 动态添加布局match_parent无效
来源:互联网 发布:js传值到html 编辑:程序博客网 时间:2024/06/06 05:53
今天写项目碰到一个问题,先上图:
下面是RecyclerView,addheader之后系统消息的布局设置了
match_parent,但显示的时候无效。代码如下:
既然出问题了就要解决问题,由于之前没有碰到过这样的问题,第一个想法是是不是RecyclerView出问题了,但是很快否决掉了,因为上面的轮播图也是addHeader添加上的。那么问题应该就是出现在:View view=LayoutInflater.from(activity).inflate(R.layout.rolling,null);
这句代码上了。
- 查看源码1
我们传的root为null,那么这里调用另外的方法传值为false; - 查看源码2
这里吧false又传给其他方法- 查看源码3
这里可以看到,如果传过来的是false,那么重新设置了view的LayoutParams,那么就可以确定,动态添加view为啥match_parent属性不生效了,只要传null值,默认就会重置LayoutParams属性
- 查看源码3
那么怎么解决呢?Android发展这么久了,系统不会不给解决的办法,那么从同名的inflate入手,找到的方法如下
由此可见,该方法如果设置最后一个参数为false,那么布局会加载xml的属性,不受ViewGroup影响。
修改代码如下:
运行效果如下:
总结一句:Android看源码真的很重要
推荐下本人的微信公众号,本博客及其他方面的消息会定期同步到公众号上面!
阅读全文
0 0
- Android 动态添加布局match_parent无效
- Android Inflater addview导致加载子布局match_parent无效
- 解决 RecyclerView item布局的match_parent无效
- android ListView条目的子布局设置android:layout_height="match_parent"无效
- 在Scrollview中布局中设置android:layout_height="match_parent"无效
- RecyclerView android:layout_width="match_parent"无效
- Android自定义Dialog的Match_parent无效问题解决
- RecyclerView android:layout_width="match_parent"无效解决方法
- RecyclerView android:layout_width="match_parent"无效
- Android 动态添加View布局
- 3.addView调用之后导致子布局的android:layout_width="match_parent"属性或者 android:layout_width="fll_parent"属性无效。
- android:match_parent是什么类型的布局
- Android 布局(fill_content、wrap_content、match_parent)
- RecycleView添加条目布局match_parent失效的问题
- android动态加载(添加)布局
- android 在布局中动态添加控件
- Android代码中动态添加布局
- Android根据布局文件动态添加控件
- openCV-图片倾斜矫正java版
- UNIX系统下常见文件夹意义
- 2、终端、命令格式、文件系统
- JavaScript面向对象-原型
- 踩坑-Integer类型的整数比较大小
- Android 动态添加布局match_parent无效
- MySQL基础操作之单表的增删改
- linux oracle用户解锁
- js观察者模式
- HelloJava
- android中Lambda表达式写法
- eclipse 打开.properties文件显示中文设置
- priority_queue 优先级队列的用法
- oracle 常用函数