【问题标题】:Android, ScrollView not scrolling past certain point, not showing all views / contentAndroid,ScrollView 不滚动超过某个点,不显示所有视图/内容
【发布时间】:2015-12-06 23:38:24
【问题描述】:

我已经查看了所有类似的问题,但找不到可行的答案。我有一个带有子 LinearLayout 和几个子 TextView 的 ScrollView。 ScrollView 在大约 TextView #10 处停止滚动。我不知道它为什么会那样做。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:orientation="vertical"
    android:background="#ff7c2b"
    xmlns:android="http://schemas.android.com/apk/res/android">

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


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

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 1!"
                android:id="@+id/textView"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 2!"
                android:id="@+id/textView2"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 3!"
                android:id="@+id/textView3"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 4!"
                android:id="@+id/textView4"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 5!"
                android:id="@+id/textView5"

                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 6!"
                android:id="@+id/textView6"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 7!"
                android:id="@+id/textView7"

                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 8!"
                android:id="@+id/textView8"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 9!"
                android:id="@+id/textView9"

                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 10!"
                android:id="@+id/textView10"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 11!"
                android:id="@+id/textView11"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 12!"
                android:id="@+id/textView12"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 13!"
                android:id="@+id/textView13"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 14!"
                android:id="@+id/textView14"
                android:background="#00BBFF"/>

    </LinearLayout>

    </ScrollView>

</LinearLayout>

要添加片段布局的主布局:

<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:id="@+id/main_activity">

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="!!!!!!!!!!!" />

    <HorizontalScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <LinearLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/gallery2"
            android:orientation="horizontal">
        </LinearLayout>
    </HorizontalScrollView>

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="Click to see..."
        android:textSize="10dp"
        android:textColor="#377bff" />

    <ImageView
        android:id="@+id/image2"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight="1.0" />

    <TableLayout
        android:layout_height="wrap_content"
        android:layout_width="wrap_content">

        <TableRow>

            <ToggleButton
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="New ToggleButton"
                android:textOff="show fragment"
                android:textOn="hide fragment"
                android:id="@+id/toggleButton" />

                <Button
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="New Activity"
                    android:id="@+id/newactivitybutton"/>

        </TableRow>

    </TableLayout>


</LinearLayout>

【问题讨论】:

  • 尝试“fill_parent”作为滚动视图的高度。
  • 是的,我已经试过了。它仍然不会改变行为。
  • 另外需要注意的是,这是在一个片段中膨胀的。我不确定这是否会以任何方式影响滚动视图的行为。
  • 你能不能也展示一下片段附加到的activity的布局?
  • 我基本上误诊了这个问题。我假设它没有滚动到一个点,而是它没有在底部显示一大块 LinearLayout。这仍然是一个问题,但没有那么严重。如果有人仍然可以帮助我解决这个问题,将不胜感激。

标签: android xml scrollview


【解决方案1】:

使用下面的布局。

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout
    android:layout_height="match_parent"
    android:layout_width="wrap_content"
    android:orientation="vertical"
    android:background="#ff7c2b"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <ScrollView
        android:layout_height="match_parent"
        android:layout_width="wrap_content"
        android:fillViewport="true"
        xmlns:android="http://schemas.android.com/apk/res/android">


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

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 1!"
                android:id="@+id/textView"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 2!"
                android:id="@+id/textView2"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 3!"
                android:id="@+id/textView3"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 4!"
                android:id="@+id/textView4"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 5!"
                android:id="@+id/textView5"

                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 6!"
                android:id="@+id/textView6"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 7!"
                android:id="@+id/textView7"

                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 8!"
                android:id="@+id/textView8"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 9!"
                android:id="@+id/textView9"

                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 10!"
                android:id="@+id/textView10"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 11!"
                android:id="@+id/textView11"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 12!"
                android:id="@+id/textView12"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 13!"
                android:id="@+id/textView13"
                android:background="#00BBFF"/>

            <TextView

                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_margin="10dp"
                android:text="This is textView 14!"
                android:id="@+id/textView14"
                android:background="#00BBFF"/>

        </LinearLayout>

    </ScrollView>

</LinearLayout>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多