无法让ScrollView在app中运行

时间:2016-03-02 14:13:46

标签: android xml android-layout scrollview android-scrollview

我的应用程序有两个部分,即今天要做的事情以及未来几天。

我可以通过按下相应的按钮隐藏/显示这些,但是当我打开它们时,可能会有太多信息,我只能滚动列表视图以查看即将到来的日子,而不是整个屏幕。

我做了一些搜索,我一直看到ScrollView弹出,但我无法让它工作,它会崩溃我的应用程序。

这是我的XML文件

<?xml version="1.0" encoding="utf-8"?>
<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:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="eu.agp_it.agpmobilemover.OverviewActivity">
    <ScrollView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">
        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:weightSum="1.0"
            android:gravity="center"
            android:id="@+id/layout_button_today">
            <Button
                android:id="@+id/overview_button_today"
                android:layout_height="wrap_content"
                android:layout_weight="0.95"
                android:layout_width="0dp"
                android:textSize="20sp"
                android:text="@string/overview_today"
                android:gravity="center"
                android:layout_marginTop="5px"
                android:layout_marginBottom="5px"
                android:background="@drawable/custom_buttonoverview"
                android:onClick="buttonTodayOnClick"/>
        </LinearLayout>
        <LinearLayout
            android:id="@+id/layout_listview_today"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/layout_button_today">
            <ListView
                android:id="@+id/listviewtoday"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:dividerHeight="1dp"

                android:visibility="visible"/>
        </LinearLayout>

        <LinearLayout
            android:id="@+id/layout_button_upcoming"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:weightSum="1.0"
            android:gravity="center"
            android:layout_below="@id/layout_listview_today">
            <Button
                android:id="@+id/overview_button_upcoming"
                android:layout_height="wrap_content"
                android:layout_weight="0.95"
                android:layout_width="0dip"
                android:textSize="20sp"
                android:text="@string/overview_upcoming"
                android:background="@drawable/custom_buttonoverview"
                android:gravity="center"
                android:layout_marginTop="5px"
                android:layout_marginBottom="5px"
                android:onClick="buttonUpcomingOnClick"/>
        </LinearLayout>
        <LinearLayout
            android:id="@+id/layout_listview_upcoming"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_below="@id/layout_button_upcoming">
            <ListView
                android:id="@+id/listviewupcoming"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:dividerHeight="1dp"

                android:visibility="gone"/>
        </LinearLayout>
    </ScrollView>


</RelativeLayout>

1 个答案:

答案 0 :(得分:0)

您可能根本不需要ScrollView。 ListViews已经为您滚动了。不建议嵌套滚动视图。

尝试取出ScrollView。每个LinearLayout可以占用屏幕的一半,或者您想要的任何数量。您还可以使用ExpandableListView,它允许您根据标题(今天,即将到来)展开和折叠今天和即将到来的日期的分配。这样你只需要一个ListView。因此维护起来会更容易。