如何在重力或布局重力的Android布局中正确左右对齐视图

时间:2018-03-18 15:56:01

标签: android layout linear gravity

我正在使用以下布局

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="2dp"
    android:layout_marginTop="10dp"
    android:background="@drawable/cardview_shadow"
    android:elevation="2dp"
    android:gravity="center_vertical"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_margin="2dp"
        android:gravity="fill_horizontal"
        android:orientation="horizontal">

        <ImageView
            android:id="@+id/ic_find_previous_holo_dark"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_gravity="left"
            android:src="@drawable/ic_find_previous_holo_dark" />

        <ViewFlipper xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/view_flipper"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center">
            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/emoji_u1f33c" />
            <ImageView
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:src="@drawable/emoji_u1f33c" />
        </ViewFlipper>

        <ImageView
            android:id="@+id/ic_find_next_holo_dark"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:layout_gravity="right"
            android:src="@drawable/ic_find_next_holo_dark" />
    </LinearLayout>

</LinearLayout>

我想要左箭头和左边的箭头右箭头右侧&amp;中心布局填补中心间隙而不给出dp,px等的精确宽度,但我无法实现这种布局。我大部分时间都需要这种类型的布局enter image description here

1 个答案:

答案 0 :(得分:0)

在您的情况下,您需要将android:layout_weight=1提供给ViewFlipper,以便它可以占用其他2张图片视图留下的剩余空间(自{{1是中间视图)。这里给出了更好的解释https://developer.android.com/guide/topics/ui/layout/linear.html检查布局权重部分。