Ris*_*han 7 android android-layout
在我的布局中,有四个部分分别是标题,可编辑控件,列表和一组按钮.我想将按钮保持在屏幕下方.我在布局上做了太多更改以强制按钮到底.但什么都没发生.请提供说明,以满足我的需求.我也在发布布局
<?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="wrap_content">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- heading for basic settings -->
<TextView
android:id="@+id/setup_macroheading"
style="@style/txtHeading" />
<View
android:layout_width="fill_parent"
android:layout_height="20dp"/>
<!-- macro name -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:layout_weight="1"
android:textColor="@color/white"
android:text="Macro Name"/>
<EditText
android:id="@+id/setup_macroname"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_weight="1"
android:maxLength="12"
android:inputType="textCapCharacters"
android:singleLine="true"/>
</LinearLayout>
<View
android:layout_width="fill_parent"
android:layout_height="20dp"/>
<ListView
android:id="@+id/lvMacroList"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
<!-- Save & Cancel button -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:layout_gravity="bottom"
android:orientation="horizontal">
<Button
android:id="@+id/setup_macroSavebtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_weight="1"
android:onClick="onSaveButtonClick"
android:text="Save"/>
<Button
android:id="@+id/setup_macroCancelbtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_weight="1"
android:onClick="onCancelButtonClick"
android:text="Cancel"/>
</LinearLayout>
</LinearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)

将包含按钮的LinearLayout的Parent设置为relative,并将包含两个按钮的线性布局的属性设置为android:layout_alignParentBottom ="true".您还可以将"线性布局"的重力设置为"底部".
试试这个:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<!-- heading for basic settings -->
<TextView
android:id="@+id/setup_macroheading"
style="@style/txtHeading" />
<View
android:layout_width="fill_parent"
android:layout_height="20dp"/>
<!-- macro name -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="20dp"
android:paddingRight="20dp"
android:orientation="horizontal">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="left|center_vertical"
android:layout_weight="1"
android:textColor="@color/white"
android:text="Macro Name"/>
<EditText
android:id="@+id/setup_macroname"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_weight="1"
android:maxLength="12"
android:inputType="textCapCharacters"
android:singleLine="true"/>
</LinearLayout>
<View
android:layout_width="fill_parent"
android:layout_height="20dp"/>
<ListView
android:id="@+id/lvMacroList"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
<!-- Save & Cancel button -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_gravity="bottom"
android:orientation="horizontal"
android:paddingLeft="20dp"
android:paddingRight="20dp" >
<Button
android:id="@+id/setup_macroSavebtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:layout_weight="1"
android:onClick="onSaveButtonClick"
android:text="Save"/>
<Button
android:id="@+id/setup_macroCancelbtn"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_weight="1"
android:onClick="onCancelButtonClick"
android:text="Cancel"/>
</LinearLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)