Android4.0 Margin设置失效解决方法
来源:互联网 发布:结伴旅游软件 编辑:程序博客网 时间:2024/04/29 15:31
Android4.0以下系统FrameLayout布局的子View设置的Margin常常出现失败的情况,而同样的代码在Android4.0及以上的系统中则没有问题。相信此时大多数屌丝程序员都气得很抓狂吧,当初遇到此问题时我也是如此,用百度、谷歌各种搜索都没有很好的解决问题,最后经过自己的研究终于找到了解决问题的方法。
1、在xml布局设置margin失效情况
在要设置Margin的View中加入android:layout_gravity="top|left",则Margin失效问题可以顺利解决;
2、在代码中设置margin失效情况
用如下代码进行设置即可解决问题:
- MarginLayoutParams marginParams = new MarginLayoutParams(this.getLayoutParams());
- marginParams.height = this.getMeasuredHeight();
- marginParams.width = this.getMeasuredWidth();
- marginParams.setMargins(l,t,r,b);
- LayoutParams layoutParams = new LayoutParams(marginParams);
- layoutParams.gravity = Gravity.TOP|Gravity.LEFT;
- this.setLayoutParams(layoutParams);
- layoutParams.gravity = Gravity.TOP|Gravity.LEFT;
解决问题后分析4.0以下之所以Framelayout设置margin失效原因应该是4.0及以上Framelayout的默认的layout_gravity设置好了"top|left"或有类似逻辑,而4.0以下则没有,所以才会失效。
0 0
- Android4.0以下Margin设置失效解决方法
- Android4.0以下Margin设置失效解决方法
- Android4.0以下Margin设置失效解决方法
- Android4.0 Margin设置失效解决方法
- IE6/IE7下margin-top失效解决方法
- 列表中li标签设置margin在IE6和IE7中第一个行失效的解决方法
- Firefox margin-top失效的原因与解决方法
- 页面布局margin:0 auto失效
- margin 0 auto在IE8下失效
- margin:0 auto;失效的原因
- Android4.0以下系统FrameLayout布局的子View设置的Margin常常出现失败的情况
- Android4.4设置windowSoftInputMode失效问题的解决方案
- margin-top失效
- margin-top失效原因
- VS2005断点设置失效的解决方法
- vc10设置断点失效的解决方法
- Android 设置禁止横屏失效解决方法
- UEditor设置内容setContent()失效的解决方法
- Java图片加水印
- Eclipse导入Maven项目出现错误:Unsupported IClasspathEntry kind=4
- linux下使用vnstat监控网络流量
- Ubuntu快捷键 终端快捷键
- Android Volley完全解析(一),初识Volley的基本用法
- Android4.0 Margin设置失效解决方法
- Linux netstat命令详解
- Struts2之struts2文件下载详解
- Oracle创建视图实现获取当前数据所在的页数,这里以每页2条数据分页
- 12.4月4有感
- Android Volley完全解析(二),使用Volley加载网络图片
- nginx基本配置nginx.conf解析
- eclipse在Ubuntu 13.04下的安装过程及问题小记
- hadoop java.io.IOException: Cannot run program "nice"