Android开发之品牌机型不同setMargins属性无效的bug

 LayoutParams dateLL = new LayoutParams(mWidth * 3 / 40, ScaleUtil.dip2px(this, 20));
            dateLL.setMargins(0, 0, ScaleUtil.dip2px(this, 20), 0);

我们来看下荣耀9i手机 android8.0系统设置setMargins右边距20的后的界面这是有效果

 

 

 

我们再看下红米2手机5.11系统手机,荣耀7i 手机6.01系统版本设置setMargins右边距20的效果,发现没用…………看图:

 

 

我发现在5.11和6.0.1系统中setMargins属性无效,但是在android8.0系统中有效,其他系统版本未测试……

 

这么解决这个办法呢?很简单那就是将setMargins的右边距设置很小5即可,然后就可以发现荣耀9i不会紧贴右边了

还有一种办法就是直接不设置setMargins这个属性即可

如下设置:

 LayoutParams dateLL = new LayoutParams(mWidth * 3 / 40, ScaleUtil.dip2px(this, 20));
            dateLL.setMargins(0, 0, ScaleUtil.dip2px(this, 5), 0);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值