我试图在屏幕底部并排设置两个或更多按钮,我知道在LinearLayout中你可以使用 android:layout_weight 并排设置按钮 我知道我可以通过使用相对布局在屏幕底部设置按钮,但我似乎无法同时为相同的按钮做两个!那可能吗?
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:background="#0B333F"
android:fillViewport="true"
android:orientation="vertical"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="vertical" >
...
...
...
...
...
...
...
...
...
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:orientation="horizontal"
android:paddingLeft="5dp"
android:paddingRight="5dp" >
<!-- <LinearLayout -->
<!-- android:layout_width="fill_parent" -->
<!-- android:layout_height="wrap_content" -->
<!-- android:layout_alignParentBottom="true" -->
<!-- android:layout_marginTop="5dp" -->
<!-- android:paddingLeft="5dp" -->
<!-- android:paddingRight="5dp" > -->
<!-- android:layout_weight="1" -->
<Button
android:id="@+id/saveButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:background="#F0BF00"
android:text="@string/save"
android:textColor="#FFF"
android:textStyle="bold" />
<Button
android:id="@+id/cancelButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:background="#F0BF00"
android:text="@string/cancel"
android:textColor="#FFF"
android:textStyle="bold" />
<!-- </LinearLayout> -->
</RelativeLayout>
</LinearLayout>
</ScrollView>
正如你在评论部分所看到的那样,我确实尝试了两种,但似乎无法让它发挥作用!请帮忙。
FYI
我不想要一个粘性的菜单;在小屏幕上会有一个滚动所以这不会影响小屏幕,因为它已经在他的底部,但是大屏幕不需要滚动我想要底部的按钮
答案 0 :(得分:1)
如果您需要在底部查看,则必须设置
android:gravity="bottom"
到LinearLayout
。
更新:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:background="#0B333F"
android:fillViewport="true"
android:orientation="vertical"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_gravity="center_horizontal"
android:layout_weight="1"
android:orientation="vertical" >
</LinearLayout>
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:orientation="horizontal"
android:paddingLeft="5dp"
android:paddingRight="5dp" >
<!-- <LinearLayout -->
<!-- android:layout_width="fill_parent" -->
<!-- android:layout_height="wrap_content" -->
<!-- android:layout_alignParentBottom="true" -->
<!-- android:layout_marginTop="5dp" -->
<!-- android:paddingLeft="5dp" -->
<!-- android:paddingRight="5dp" > -->
<!-- android:layout_weight="1" -->
<Button
android:id="@+id/saveButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:background="#F0BF00"
android:text="@string/save"
android:textColor="#FFF"
android:textStyle="bold" />
<Button
android:id="@+id/cancelButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:background="#F0BF00"
android:text="@string/cancel"
android:textColor="#FFF"
android:textStyle="bold" />
<!-- </LinearLayout> -->
</RelativeLayout>
</LinearLayout>
</ScrollView>
答案 1 :(得分:0)
你可以这样做:
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:layout_gravity="center_horizontal"
android:orientation="vertical" >
</LinearLayout>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal" >
<Button
android:id="@+id/saveButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:background="#F0BF00"
android:text="save"
android:textColor="#FFF"
android:textStyle="bold" />
<Button
android:id="@+id/cancelButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:background="#F0BF00"
android:text="cancel"
android:textColor="#FFF"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
答案 2 :(得分:0)
我通过添加
来管理android:gravity="bottom"
正如PiYusH GuPtA建议包含按钮的 LinearLayout ,但我还需要从
更改 LinearLayout 布局android:layout_height="wrap_content"
到
android:layout_height="fill_parent"
-
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="vertical" >
...
...
...
...
...
...
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="5dp"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:gravity="bottom" >
<Button
android:id="@+id/saveButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:layout_weight="1"
android:background="#F0BF00"
android:text="@string/save"
android:textColor="#FFF"
android:textStyle="bold" />
<Button
android:id="@+id/cancelButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:layout_weight="1"
android:background="#F0BF00"
android:text="@string/cancel"
android:textColor="#FFF"
android:textStyle="bold" />
</LinearLayout>
</LinearLayout>
答案 3 :(得分:0)
如果您希望屏幕上始终显示您的按钮,并且您的按钮位于底部中心,请移动ScrollView,如下所示。如果您希望按钮填充底线或相对于边缘放置,则可以删除底部的LinearLayout,并在按钮上设置几个对齐属性。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:paddingLeft="5dp"
android:paddingRight="5dp" >
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:background="#0B333F"
android:fillViewport="true"
android:orientation="vertical"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp" >
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:orientation="vertical" >
.....
.....
.....
.....
.....
</LinearLayout>
</ScrollView>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:orientation="horizontal" >
<Button
android:id="@+id/saveButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#F0BF00"
android:text="@string/save"
android:textColor="#FFF"
android:textStyle="bold" />
<Button
android:id="@+id/cancelButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="5dp"
android:background="#F0BF00"
android:text="@string/cancel"
android:textColor="#FFF"
android:textStyle="bold" />
</LinearLayout>
</RelativeLayout>
答案 4 :(得分:0)
我认为这是一个很好的解决方案
<RelativeLayout >
<LinearLayout
android:id="@+id/bottomLayout"
android:layout_alignParentBottom="true"
android:orientation="horizontal">
<Button />
<Button />
</LinearLayout>
<ScrollView
android:layout_alignParentTop="true"
android:layout_above="@id/bottomLayout">
</ScrollView>
</RelativeLayout>
它们只是嵌套的布局结构,因此您需要添加所需的更多属性。请尽快告诉我结果。
答案 5 :(得分:0)
如果您希望按钮始终位于内容的底部,并不总是在屏幕上显示,并且要填充屏幕的最下一行,则可以执行以下操作。
<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentBottom="true"
android:background="#0B333F"
android:fillViewport="true"
android:orientation="vertical"
android:paddingBottom="10dp"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:paddingTop="10dp" >
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:paddingLeft="5dp"
android:paddingRight="5dp" >
........
........
........
........
........
........
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:orientation="horizontal" >
<Button
android:id="@+id/saveButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="#F0BF00"
android:text="@string/save"
android:textColor="#FFF"
android:textStyle="bold" />
<Button
android:id="@+id/cancelButton"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginLeft="5dp"
android:background="#F0BF00"
android:text="@string/cancel"
android:textColor="#FFF"
android:textStyle="bold" />
</LinearLayout>
</RelativeLayout>
</ScrollView>