使用LinearLayout将按钮放在屏幕底部?

我有下面的代码,我怎样才能让3个按钮在底部?

    <TextView
        android:id="@+id/textView1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="60dp"
        android:gravity="center"
        android:text="@string/observer"
        android:textAppearance="?android:attr/textAppearanceLarge"
        tools:context=".asdf"
        android:weight="1" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <Button
            android:id="@+id/button1"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="145dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal|center"
            android:text="1" />

        <Button
            android:id="@+id/button2"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="145dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal|center"
            android:text="2" />

        <Button
            android:id="@+id/button3"
            style="?android:attr/buttonStyleSmall"
            android:layout_width="145dp"
            android:layout_height="wrap_content"
            android:layout_gravity="center_horizontal|center"
            android:text="3" />
    </LinearLayout>


你需要确保四件事情:

  • 你的外部LinearLayoutlayout_height="match_parent"
  • LinearLayout内部的layout_weight="1"layout_height="0dp"
  • 你的TextViewlayout_weight="0"
  • 您已经在内部LinearLayout: android:gravity="center|bottom"上正确设置重力LinearLayout: android:gravity="center|bottom"
  • 注意fill_parent并不意味着“占用所有可用空间”。 但是,如果您在layout_height="0dp" layout_weight="1"使用layout_height="0dp" ,则视图将占用所有可用空间(无法通过“fill_parent”获取适当的布局)。

    这里有一些我很快写到的代码,它以与代码类似的方式使用两个LinearLayouts。

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/db1_root"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" >
    
        <TextView
            android:id="@+id/textView1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:text="@string/cow"
            android:layout_weight="0"
            android:textAppearance="?android:attr/textAppearanceLarge" />
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="0dip"
            android:layout_weight="1"
            android:gravity="center|bottom"
            android:orientation="vertical" >
    
            <Button
                android:id="@+id/button1"
                style="?android:attr/buttonStyleSmall"
                android:layout_width="145dp"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal|center"
                android:text="1" />
    
            <Button
                android:id="@+id/button2"
                style="?android:attr/buttonStyleSmall"
                android:layout_width="145dp"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal|center"
                android:text="2" />
    
            <Button
                android:id="@+id/button3"
                style="?android:attr/buttonStyleSmall"
                android:layout_width="145dp"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal|center"
                android:text="3" />
        </LinearLayout>
    
    </LinearLayout>
    

    结果看起来像这样:

    在这里输入图像描述


    您可以使用RelativeLayout并将其与android:layout_alignParentBottom="true"的底部对齐android:layout_alignParentBottom="true"


    创建相对布局,并在该布局内用此线创建按钮

    android:layout_alignParentBottom="true"
    
    链接地址: http://www.djcxy.com/p/93207.html

    上一篇: Put buttons at bottom of screen with LinearLayout?

    下一篇: How to align button to bottom of screen in Nested Linear Layouts