Android滚动ScrollView

时间:2014-08-15 11:23:47

标签: android android-layout layout scrollview

在我的布局中我有RelativeLayout, 它的子项位于屏幕底部的ScrollViewEditTextButton 在ScrollView中有一个LinearLayout 我正在获取一些数据并将其动态添加到LinearLayout 并使用Scrollview.scrollTO()方法

滚动视图

但问题是scrollview占据了屏幕的全密,即数据也显示在edittext和按钮下

滚动视图是否可以限制在edittext和按钮的顶部?

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

<ScrollView
    android:id="@+id/scrollView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:transcriptMode="alwaysScroll" 
    >

    <LinearLayout
        android:id="@+id/ll"
        android:layout_width="match_parent"
        android:layout_height="461dp"
        android:orientation="vertical" >

    </LinearLayout>


</ScrollView>

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/editText1"
    android:onClick="check"
    android:text="@string/btnlb" />

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_toLeftOf="@+id/button1"
    android:ems="10"
    android:inputType="text" />

</RelativeLayout>

1 个答案:

答案 0 :(得分:-1)

您只需将scrollview layout_above属性设置为按钮或edittext的id即可。但是,为此你必须在你声明scrollview的地方声明edittext /按钮(我想?)。像这样的事情(我没有经过测试)

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

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_alignTop="@+id/editText1"
    android:onClick="check"
    android:text="@string/btnlb" />

<EditText
    android:id="@+id/editText1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_toLeftOf="@+id/button1"
    android:ems="10"
    android:inputType="text" />

<ScrollView
    android:id="@+id/scrollView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@id/button1"
    android:transcriptMode="alwaysScroll" 
    >

    <LinearLayout
    ....
    </LinearLayout>

</ScrollView>

</RelativeLayout>

注意:scrollview应该具有match_parent的高度和宽度,而不是wrap_content