android,布局总结(常用布局规律)
1.在使用Relativelayout的时候,在给Relativelayout设置属性:
android:gravity="center_vertical"的时候,容器的子view里面高度最高的是垂直居中,
其他相对比较矮的子view就靠着最高的子view顶部布局。
2.在Relativelayout的时候,如果、Relativelayout使用了android:gravity的时候,
比如:android:gravity:"center:vertical",那么子view使用android:layout_alignparentbottom
会导致父view的gravity属性失效,而且会影响到其他子view.
总结在使用RelativeLayout布局的时候,如果子view 有多个,需要所有字view水平垂直居中
那么有两种办法:
1.父view不加android:gravity="center-vertical",每个子view都加上一个android:
layout_centervetical="true"的属性即可.
如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="250dp"
android:background="#000">
<TextView
android:id="@+id/mydd"
android:layout_width="50dp"
android:layout_height="90dp"
android:background="#666"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:text="哈哈"
/>
<TextView
android:id="@+id/dd2"
android:layout_width="60dp"
android:layout_height="60dp"
android:background="#888"
android:layout_centerVertical="true"
android:layout_toLeftOf="@id/mydd"
android:text="哈哈"
/>
<ImageView
android:layout_width="50dp"
android:layout_height="40dp"
android:layout_centerVertical="true"
android:layout_toLeftOf="@id/dd2"
android:src="@android:drawable/btn_default"
/>
</RelativeLayout>
2.父view加上android:gravity="center-vertical",每个子view加上android:gravity
="center-vertical",然后根据android:alignBaseline来居中。(适合子view可以设置gravity
的view)
代码如下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="250dp"
android:background="#000"
android:gravity="center_vertical">
<TextView
android:id="@+id/mydd1"
android:layout_width="50dp"
android:layout_height="90dp"
android:background="#666"
android:gravity="center_vertical"
android:layout_alignParentRight="true"
android:text="哈哈"
/>
<TextView
android:id="@+id/ddd"
android:layout_width="60dp"
android:layout_height="60dp"
android:background="#888"
android:gravity="center_vertical"
android:layout_toLeftOf="@id/mydd1"
android:text="哈哈"
android:layout_alignBaseline="@id/mydd1"></TextView></RelativeLayout>
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。