Scrollview内部线性布局不滚动

时间:2013-11-07 17:42:08

标签: android scrollview

我正在尝试制作类似于Google日历的日视图,但我似乎无法滚动浏览滚动视图。我的滚动视图位于线性布局中。我还有一个需要在滚动视图下方的按钮。作为注释,按钮和scrollview都有一个与它们相关联的layout_weight。

以下是相关摘录:

<ScrollView android:layout_width="wrap_content"
    android:layout_height="0px" 
    android:layout_weight="6"
    android:fillViewport="true" >

    <include android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        layout="@layout/calendar_day_view" />

</ScrollView>

calendar_day_view.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:baselineAligned="false"
    android:background="@android:color/white"
    android:orientation="horizontal" >

    <RelativeLayout android:layout_width="0px"
        android:layout_height="fill_parent"
        android:layout_weight="1">

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/eightAM" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/nineAM"
            android:translationY="60dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/tenAM"
            android:translationY="120dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/elevenAM"
            android:translationY="180dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/twelvePM"
            android:translationY="240dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/onePM"
            android:translationY="300dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/twoPM"
            android:translationY="360dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/threePM"
            android:translationY="420dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/fourPM"
            android:translationY="480dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/fivePM"
            android:translationY="540dp" />

        <TextView android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/sixPM"
            android:translationY="600dp" />

    </RelativeLayout>

    <include android:layout_width="0px"
        android:layout_height="fill_parent"
        android:layout_weight="3"
        layout="@layout/calendar_horizontal_delims" />"

</LinearLayout>

和calendar_horizo​​ntal_delims.xml:

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

    <View android:translationY="60dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="120dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="180dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="240dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="300dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="360dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="420dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="480dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="540dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

    <View android:translationY="600dip"
        android:layout_width="fill_parent"
        android:layout_height="1dip"
        android:background="#000000"/>

</LinearLayout>

2 个答案:

答案 0 :(得分:0)

试试这个:

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

    <include android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        layout="@layout/calendar_day_view" />

</ScrollView>

答案 1 :(得分:0)

我认为你误解了ScrollView的使用:

<强> ScrollView only supports vertical scrolling. For horizontal scrolling, use HorizontalScrollView.

更多信息:

<强> ScrollView