0

我想设计一个 UI,我将在其中显示大量文本内容,然后显示一个按钮。用户可以向下滚动文本内容,但按钮应始终保持在屏幕底部可见。android 市场上可用的 Vlingo 应用程序使用类似的 UI,如下图所示:

在此处输入图像描述 在此处输入图像描述

我曾尝试将文本内容放在 scrollView 和 scrollView 之外的按钮中,但这样做按钮会切断屏幕。这是我尝试过的 XML 布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background" >

    <RelativeLayout
        android:id="@+id/relativeLayout1"
        android:layout_width="match_parent"
        android:layout_height="300dp" >

        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="@string/message"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />           
        <TextView
            android:id="@+id/txtMsg1"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/txtMsgHd"
            android:text="@string/main_ex_msg1" />

    </RelativeLayout>
    </ScrollView>
    <RelativeLayout
        android:id="@+id/relativeLayout2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" >

        <Button
            android:id="@+id/btnSpeak"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:text="@string/speak_now" />

        </RelativeLayout>

4

1 回答 1

1

我会考虑使用列表视图来执行此操作,而不是使用具有大量文本视图等的滚动,但是为了回答问题,如果您要做的只是使滚动视图不重叠或向下推按钮我会做如下的事情

注意:必须删除任何资源引用,所以有点乱,但你应该明白

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_above="@+id/btnSpeak">
        <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical">
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg A"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />       
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg B"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />           
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg C"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />    
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg D"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />     
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg E"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />    
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg F"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />   
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg A"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />       
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg B"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />           
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg C"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />    
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg D"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />     
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg E"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />    
        <TextView
            android:id="@+id/txtMsgHd"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentTop="true"
            android:layout_marginLeft="10dp"
            android:layout_marginTop="20dp"
            android:text="Msg F"
            android:layout_marginRight="10dp"                                
            android:textAppearance="?android:attr/textAppearanceLarge" />                           
        <TextView
            android:id="@+id/txtMsg1"
            android:layout_marginLeft="10dp"
            android:layout_marginRight="10dp"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/txtMsgHd"
            android:text="Msg 1" />
        </LinearLayout>
</ScrollView>

<Button
        android:id="@+id/btnSpeak"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:text="Speak Now" />

</RelativeLayout>
于 2012-05-20T22:43:53.120 回答