如何在android中添加垂直滚动条来查看?

时间:2013-07-16 02:30:58

标签: android scrollbar

这是我的布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".ProfileActivity" >

    <ImageView
        android:id="@+id/picture_avatar"
        android:layout_width="90dp" 
        android:layout_height="110dp"
        android:background="#bdbdbd"
        android:src="@drawable/no_avatar" />

    <TextView
        android:id="@+id/textview_status"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:layout_alignTop="@+id/picture_avatar"
        android:layout_toRightOf="@+id/picture_avatar"
        android:text="" />

    <TextView
        android:id="@+id/textview_fullname"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/picture_avatar"
        android:textSize="30sp"
        android:text="" />



    <TextView
        android:id="@+id/textview_email"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textview_fullname"
        android:autoLink="email"
        android:text="" />

    <TextView
        android:id="@+id/textview_phone"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textview_email"
        android:autoLink="phone" 
        android:text="" />

    <TextView
        android:id="@+id/textview_website"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textview_phone"
        android:autoLink="web"
        android:text="" />

    <TextView
        android:id="@+id/textview_bio"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="7dp"
        android:layout_marginBottom="7dp"
        android:layout_below="@+id/textview_website"
        android:text="" />

    <TextView
        android:id="@+id/textview_lastactive"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textview_bio"
        android:text="" />

    <TextView
        android:id="@+id/textview_datejoined"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textview_lastactive"
        android:text="" />

    <TextView
        android:id="@+id/textview_dateleft"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/textview_datejoined"
        android:text="" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/button_logout"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:onClick="CloseActivity"
            android:text="@+string/back" />

        <Button
            android:id="@+id/button_exit"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:onClick="GoToEditProfile"
            android:text="@+string/edit" />

    </LinearLayout>

</RelativeLayout>

如何添加垂直滚动条,仅显示内容是否过长?

我尝试用

包装它
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:overScrollMode="always" 
        android:isScrollContainer="true" 
        android:scrollbarAlwaysDrawVerticalTrack="true" 
        android:scrollbarStyle="outsideInset" 
        android:scrollbars="vertical">

但是底层的文字视图和按钮是重叠的......

有谁知道怎么做?

4 个答案:

答案 0 :(得分:1)

最简单的方法是使用scrollview完成整个布局。

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android" 
        android:layout_width="fill_parent" 
        android:layout_height="fill_parent" >

...YOUR PREVIOUS LAYOUT HERE...
....

</ScrollView>

请记住删除相对布局上的xmlns:android="http://schemas.android.com/apk/res/android"。你只需要一次。

这样,当内容太长时,您的布局将支持滚动。

答案 1 :(得分:1)

Scrollview 只能有一个子元素,例如 vertical linearlayout 。那么您的其他观点将是 linearlayout 的子元素。

答案 2 :(得分:0)

我认为你必须创建一个scrollview,然后在该scrollview中添加一个垂直布局。之后,您可以添加textview,按钮或任何您想要的内容。

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

                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical" >

                    <TextView
                        android:id="@+id/act_test_description"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginTop="15dp"
                        android:text="Small Text"
                        android:textAppearance="?android:attr/textAppearanceSmall" />
                </LinearLayout>
            </ScrollView>

答案 3 :(得分:0)

我认为你必须创建一个scrollview,然后在该scrollview中添加一个垂直布局。之后,您可以添加textview,按钮或任何您想要的内容。