2

我有一个复杂的视图,因为我需要在页面底部设置按钮。我需要两排纽扣,左边一个,右边两个。

我设法解决这个问题的方法是这样的:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="fill_parent"
  android:layout_height="fill_parent">
  <LinearLayout
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"
      android:orientation="vertical" >
    <ScrollView
          android:layout_width="match_parent"
          android:layout_height="0dp"
          android:layout_weight="1"
          android:fillViewport="true">
      ...........
          
    </ScrollView>
    <LinearLayout
         android:id="@+id/linearLayout1"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:gravity="center|bottom"
         android:orientation="horizontal">
      <TableLayout
              android:stretchColumns="1"
              android:id="@+id/tableLayout1"
              android:layout_width="fill_parent"
              android:layout_height="wrap_content">
        <TableRow
             android:gravity="center_horizontal"
            android:layout_height="wrap_content">
          <Button
               android:textSize="12sp"
               android:id="@+id/btAnterior"
               android:layout_width="wrap_content"
               android:layout_height="30sp"
               android:text="A"
               android:background="@drawable/black_buttonSmall"
               style="@style/button_text" />
          <Button
             android:layout_gravity="right"
              android:textSize="12sp"
              android:id="@+id/btnGuardar"
              android:layout_width="wrap_content"
              android:layout_height="30sp"
              android:text="G"
              android:background="@drawable/black_buttonSmall"
              style="@style/button_text" />
          <Button
              android:layout_gravity="right"
              android:textSize="12sp"
              android:id="@+id/btnCancelar"
              android:layout_width="wrap_content"
              android:layout_height="30sp"
              android:text="C"
              android:background="@drawable/black_buttonSmall"
              style="@style/button_text" />
        </TableRow>
        <TableRow
                android:gravity="center_horizontal"
                android:layout_height="wrap_content">
          <Button
               android:textSize="12sp"
               android:id="@+id/btVolver"
               android:layout_width="wrap_content"
               android:layout_height="30sp"
               android:text="V"
               android:background="@drawable/black_buttonSmall"
               style="@style/button_text" />

          <Button
             android:layout_gravity="right"
              android:textSize="12sp"
              android:id="@+id/btnMateriales"
              android:layout_width="wrap_content"
              android:layout_height="30sp"
              android:text="Materiales"
              android:background="@drawable/black_buttonSmall"
              style="@style/button_text" />
          <Button
            android:layout_gravity="right"
            android:textSize="12sp"
            android:id="@+id/btnUltima"
            android:layout_width="wrap_content"
            android:layout_height="30sp"
            android:text="U"
            android:background="@drawable/black_buttonSmall"
            style="@style/button_text" />
        </TableRow>
      </TableLayout>
    </LinearLayout>

  </LinearLayout>
</FrameLayout>

它看起来像这样

在此处输入图像描述

我需要的是在左右设置 leftMargin。

我该怎么做?

4

1 回答 1

2

这看起来像这样

其实你为什么不尝试这样的事情:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent" >

  <!--Your code...-->

  <RelativeLayout
    android:layout_width="match_parent"
    android:layout_marginRight="20dp"
    android:layout_marginLeft="20dp"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom" >
    <LinearLayout
         android:layout_width="wrap_content"
         android:orientation="vertical"
         android:layout_height="wrap_content"
         android:layout_alignParentLeft="true"  >
      <Button
          android:layout_width="wrap_content"
          android:text="A"
          android:layout_height="wrap_content"/>
      <Button
         android:layout_width="wrap_content"
         android:text="B"
         android:layout_height="wrap_content"/>
    </LinearLayout>

    <LinearLayout
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:orientation="vertical"
         android:id="@+id/linearContainerHelper"
         android:layout_alignParentRight="true"  >
      <Button
         android:layout_width="wrap_content"
         android:text="C"
         android:layout_height="wrap_content"/>
      <Button
         android:layout_width="wrap_content"
         android:text="D"
         android:layout_height="wrap_content"/>
    </LinearLayout>

    <LinearLayout
        android:layout_width="wrap_content"
        android:orientation="vertical"
        android:layout_height="wrap_content"
        android:layout_toLeftOf="@+id/linearContainerHelper">
      <Button
         android:layout_width="wrap_content"
         android:text="E"
         android:layout_height="wrap_content"/>
      <Button
         android:layout_width="wrap_content"
         android:text="F"
         android:layout_height="wrap_content"/>
    </LinearLayout>
  </RelativeLayout>

</FrameLayout>

如果您的父根是 RelativeLayout,请尝试使用android:layout_alignParentBottom="true"istead of android:layout_gravity="bottom"

于 2017-01-04T14:56:46.550 回答