作为前端工程师,界面效果,效率。肯定是第一要务。面对安卓庞大的机型和屏幕对开发者的要求也就越来越高了。今天笔者就自己对UI适配的一些经验进行一个简短的总结。
1.关于xml中写死dp的思考
首先我们应该先把问题抛出,如果我们在xml把控件的宽度和高度写死,比如
<TextView
android:layout_width="100dp"
android:layout_height="50dp"
android:gravity="center"
android:text="asdasdasd"
/>
相信大多时候都可以这么写,因为Android dp这个单位就是为了适配屏幕而出现的控件长度单位,它会让100dp在不同的手机不同的屏幕尺寸都有相似的表现。
为什么是相似的表现而不是绝对的表现呢?因为不同的设备,横向和纵向所拥有的dp很可能是不同的,一般手机横向dp在360dp左右,也就是说,如果你写了一个宽度为180dp的控件,在一些手机可能有屏幕的一般宽,有一些手机超过一般,有一些手机不到一半。
我们写这样的一段代码,然后看一下xml的预览效果:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:background="#123333"
android:id="@+id/container"
android:layout_width="360dp"
android