关于安卓项目中xml的使用非常多,为了达到一些好的UI效果,需要对xml比较熟练,会使用很多的小技巧,本人准备对这些小技巧进行整理和总结,希望进行分享和交流。
关于weight的使用,由于weight在布局中主要按比例进行组件的摆放,因此比较容易解决适配的问题,所以学会使用weight会减轻开发过程中部分繁琐的开发任务。
1.使用weight居中显示
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:gravity="center" android:weightSum="1" > <Button android:id="@+id/button" android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="0.5" android:text="Weight_Button" /> </LinearLayout>
2.使用weight实现相同宽度的n个组件(这里用3个做测试)
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:weightSum="3" > <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="Weight_Button1" /> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="Weight_Button2" /> <Button android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1" android:text="Weight_Button3" /> </LinearLayout>
3.使用weight实现不同比例宽度的n个组件(这里用4个做测试)
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal" android:weightSum="10" > <TextView android:layout_width="0dp" android:layout_height="30dp" android:layout_weight="4" android:background="@color/yellow" android:text="4" /> <TextView android:layout_width="0dp" android:layout_height="30dp" android:layout_weight="3" android:background="@color/red" android:text="3" /> <TextView android:layout_width="0dp" android:layout_height="30dp" android:layout_weight="2" android:background="@color/yellow" android:text="2" /> <TextView android:layout_width="0dp" android:layout_height="30dp" android:layout_weight="1" android:background="@color/red" android:text="1" /> </LinearLayout>
占据比例分别为总宽度的0.4,0.3,0.2,0.1 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|