这是我的gui xml:
<FrameLayout android:layout_width="fill_parent"
android:layout_height="fill_parent" android:id="@+id/frameLayout"
xmlns:android="http://schemas.android.com/apk/res/android">
<ScrollView android:layout_width="fill_parent" android:id="@+id/scrollView"
android:fillViewport="true" android:layout_height="fill_parent">
<LinearLayout android:layout_width="fill_parent"
android:orientation="vertical" android:id="@+id/contentLayout"
android:padding="5dip" android:fadingEdge="vertical"
android:layout_height="fill_parent">
<TextView android:id="@+id/lblName" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/label_name"></TextView>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:id="@+id/nameLayout">
<CheckBox android:layout_width="wrap_content"
android:layout_height="wrap_content" android:id="@+id/chkName"></CheckBox>
<TextView android:layout_marginLeft="4dip"
android:layout_marginRight="4dip" android:id="@+id/txtName"
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:textColor="@color/white" android:text="TextView"
android:layout_weight="1" android:textSize="20dip"></TextView>
</LinearLayout>
<TextView android:id="@+id/lblPhone" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/label_phone"></TextView>
<LinearLayout android:isScrollContainer="false"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:orientation="vertical" android:id="@+id/lstPhone"></LinearLayout>
<TextView android:id="@+id/lblEmail" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/label_email"></TextView>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="vertical"
android:id="@+id/lstEmail"></LinearLayout>
<TextView android:id="@+id/lblAddress" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/label_address"></TextView>
<LinearLayout android:layout_width="fill_parent"
android:layout_height="wrap_content" android:orientation="vertical"
android:id="@+id/lstAddress"></LinearLayout>
</LinearLayout>
</ScrollView>
<LinearLayout android:background="@color/grey"
android:layout_width="fill_parent" android:paddingTop="5dip"
android:layout_height="wrap_content" android:orientation="horizontal"
android:layout_gravity="bottom|right" android:id="@+id/commandLayout">
<Button android:id="@+id/btnToClipBoard" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:text="To ClipBoard"
android:layout_weight="1"></Button>
<Button android:id="@+id/btnCancel" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:text="Cancel"
android:layout_weight="1"></Button>
</LinearLayout>
</FrameLayout>
LinearLayout id:commandLayout很好地保留在窗口的底部.但是LinearLayout id:contentLayout不会滚动.如果我在scrollView中移动commandLayout,那么所有内容都会滚动.这不是我想要的.无论contentLayout有多长,我都希望看到按钮.任何帮助将不胜感激.我大部分时间都在这上面…谢谢.
编辑:感谢您的所有回复.从FrameLayout更改为RelativeLayout并设置commandLayout对齐父底部和scrollview对齐父顶部是最有效的解决方案.
最佳答案 我将基本布局即“frameLayout”更改为相对布局.
我这样做,以便“commandLayout”将低于“scrollView”.
如果您要显示的内容隐藏在“commandLayout”后面,这没有意义
我在“commandLayout”上添加了alignParentBottom.
我还在“scrollView”中添加了layout_above =“@ id / commandLayout”
这是工作的xml,是的,它滚动=)
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/relativeLayout"
xmlns:android="http://schemas.android.com/apk/res/android"
>
<ScrollView
android:layout_width="fill_parent"
android:id="@+id/scrollView"
android:fillViewport="true"
android:layout_height="fill_parent"
android:layout_above="@+id/commandLayout"
>
<LinearLayout
android:layout_width="fill_parent"
android:orientation="vertical"
android:id="@+id/contentLayout"
android:padding="5dip"
android:fadingEdge="vertical"
android:layout_height="fill_parent"
>
<TextView
android:id="@+id/lblName"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
</TextView>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/nameLayout"
>
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/chkName">
</CheckBox>
<TextView
android:layout_marginLeft="4dip"
android:layout_marginRight="4dip"
android:id="@+id/txtName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="#FFFFFF"
android:text="TextView"
android:layout_weight="1"
android:textSize="20dip">
</TextView>
</LinearLayout>
<TextView
android:id="@+id/lblPhone"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
</TextView>
<LinearLayout
android:isScrollContainer="false"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/lstPhone">
</LinearLayout>
<TextView
android:id="@+id/lblEmail"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
</TextView>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/lstEmail"
>
</LinearLayout>
<TextView
android:id="@+id/lblAddress"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
>
</TextView>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
android:id="@+id/lstAddress">
</LinearLayout>
<TextView
android:id="@+id/LongText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="40sp"
android:text="This is a super long text that will hopefully cover the whole screen so as the scroll will work."
>
</TextView>
<TextView
android:id="@+id/AnotherLongText"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="40sp"
android:text="This is another super long text to show that the scrolling will work even more!"
>
</TextView>
</LinearLayout>
</ScrollView>
<LinearLayout
android:background="#737754"
android:layout_width="fill_parent"
android:paddingTop="5dip"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:id="@+id/commandLayout"
android:layout_alignParentBottom="true"
>
<Button
android:id="@+id/btnToClipBoard"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="To ClipBoard"
android:layout_weight="1">
</Button>
<Button
android:id="@+id/btnCancel"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="Cancel"
android:layout_weight="1">
</Button>
</LinearLayout>
</RelativeLayout>