关于屏幕适配的0px解决方法
遇到的问题
今天在学习安卓开发的时候,想要实现一下平常经常在大部分应用会见到的底部导航栏的效果,比如qq,淘宝等。
大体的思路是:
- 底部使用LinearLayout在其水平方向添加四个button
- 上部使用fragment,利用底部的四个button通过设置OnClickListener进行切换
当然实现是相当简单的,使用dp在测试机上很容易就实现了,代码就不贴出来了。
然而很容易就想到了这样在不同机器上很容易就产生问题。主要是因为就算是使用dp这个单位,也有可能在不同机器上占用不同的比例
例如:
<View
android:layout_width="10dp"
android:layout_height="1px"
/>
简单的利用View画一条线在不同设备上都可能产生不同的宽度比例。
那么,作为一只追求”通用代码”的程序猿,绝对不会容忍这样的事情放生的。
解决方法
通过翻阅无数大神的博客,终于找到了一种方法:通过0px和layout_weight来调整布局在某一方向上的比例;
那么今天的问题就很好解决了,代码如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.and