屏幕适配推翻过往从新来过

一直都在关注问题。只要听说哪里有什么好的适配方法都会去看一看。

期间用过很多大神的黑科技

http://blog.csdn.net/i7788/article/details/44937277  用不同的dimen来设置宽高。他的jar包是用的宽度做基准。不过改一改还是可以用的。

https://github.com/hongyangAndroid/AndroidAutoLayout 鸿洋大神的自动布局。把你写的px值根据屏幕实际大小进行缩放。

他们原理都是用px进行等比例缩放。鸿洋大神的库有很多坑要爬,有些属性没有比如drawablepadding 、 行间距。不能正常监听键盘弹出。和databinding混合使用是否会有坑?

所以我想找有没有更好的办法。

又绕了回来。

还是用dp sp 适配吧。特殊情况特殊处理!

我们本来就不应该花太多的时间来琢磨这个。我们更需要关注业务。android已经给我推荐了方法了,照到做就行了。适配的事情还是交给android来做吧。

就用dp! 把设计图上标的px,转成dp。设置到xml上就ok了

具体1dp转成多少px看ppi。一般对于手机来说:


在Android中,规定以160dpi(即屏幕分辨率为320x480)为基准:1dp=1px

从上面图看。1920*1080的设计图。(这里的dpi是用的参考的dpi,不一定就是实际手机的dpi)1dp换算成3px就ok , 720p的设计图 1dp换算成2px。

当然不能完全依靠这个,还需要结合linearlayout,realativelayout等的规则做限制。就更好了。

对于pad来说。上面这幅图就不够看了。因为有可能一个2560*1600的pad 他的dpi可能只有xhdpi。

所以还是要自己掌握这个换算公式。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值