在具有两个视图的LinearLayout内垂直居中一个视图

时间:2014-01-16 09:28:10

标签: android android-linearlayout footer centering

我想强制 gauge 垂直居中 llInner ... 我似乎无法

使用所有可用空间而不是 llTop ,而 llInner 正在执行此操作。

谢谢

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/llTop"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:gravity="center"
android:background="#ff0000">

<eu.sextante.speedlimit.Views.GaugeView
    android:id="@+id/gauge"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    />

<LinearLayout
    android:id="@+id/llInner"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:orientation="horizontal"
    android:layout_gravity="bottom|right"
    android:gravity="bottom|right"
    android:background="#00ff00">

    <eu.sextante.speedlimit.Views.LimitView
        android:id="@+id/limit"
        android:layout_width="wrap_content"
        android:layout_height="60dip"
        android:background="#0000ff"
        android:maxHeight="60dip"
        android:maxWidth="60dip"/>

</LinearLayout>

1 个答案:

答案 0 :(得分:0)

您应该使用相对布局作为主要布局,如下所示:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".MainActivity" >

    <LinearLayout
        android:id="@+id/llInner"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="bottom|right"
        android:background="#00ff00"
        android:gravity="bottom|right"
        android:orientation="horizontal" >

        <eu.sextante.speedlimit.Views.LimitView
            android:id="@+id/limit"
            android:layout_width="wrap_content"
            android:layout_height="60dip"
            android:background="#0000ff"
            android:maxHeight="60dip"
            android:maxWidth="60dip" />


    </LinearLayout>

    <your.gaugeview
        android:id="@+id/gauge"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerVertical="true"
        android:text="dfdg" />

</RelativeLayout>

希望它对你有所帮助。