fif*_*fth 4 android android-layout
我有这样的布局
<?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="match_parent"
android:padding="@dimen/DP_3">
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toRightOf="@+id/image"
android:layout_centerVertical="true"
android:text="xxx"/>
<TextView
android:id="@+id/custom_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"/>
<TextView
android:id="@+id/text"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="yyy"/>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
我希望所有的孩子垂直放置在父RelativeLayout中,但是,layout_centerVertical ="true"做了伎俩,但layout_gravity ="center_vertical"什么也没做.我以为他们有同样的意思,但不是真的,我想念了吗?
layout_gravity是属性LinearLayout,它不起作用RelativeLayout.
如果将RelativeLayout容器更改为LinearLayout,则元素将位于中心位置android:layout_gravity="center_vertical"
XML:
<?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" >
<ImageView
android:id="@+id/image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="xxx"
android:padding="5dip"/>
<TextView
android:id="@+id/custom_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="dsf"
android:padding="5dip"/>
<TextView
android:id="@+id/text"
android:padding="5dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:text="yyy" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
输出:

参考链接:
嗯,这很简单:
layout_centerVertical="true"
Run Code Online (Sandbox Code Playgroud)
在RelativeLayout中做了诀窍......
而
layout_gravity="center_vertical"
Run Code Online (Sandbox Code Playgroud)
适用于LinearLayout.