如何使用ViewPager和ListView在XML中实现ScrollView?

时间:2017-09-21 14:35:03

标签: android xml android-layout listview scrollview

当我打开应用程序时,只有ListView滚动,但我制作的滑动图像并没有向上滚动。

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


    <android.support.v4.view.ViewPager
         android:id="@+id/view_pager"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:background="@color/white"
         android:layout_alignParentTop="true"
         android:layout_alignParentLeft="true"
         android:layout_alignParentStart="true"
         app:layout_behavior="@string/appbar_scrolling_view_behavior">

        </android.support.v4.view.ViewPager>


    <ListView
        android:id="@+id/oneListView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true"
        android:layout_marginTop="261dp" />
</RelativeLayout>

如果将ScrollView放在ViewPager的上半部分,我的应用程序崩溃了。 screenshot

1 个答案:

答案 0 :(得分:0)

使用NestedScrollView可能对您有用。您可以使用以下代码:

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.NestedScrollView 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
>

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/test">

<android.support.v4.view.ViewPager
    android:id="@+id/view_pager"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/white"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    android:layout_alignParentTop="true"
    android:layout_alignParentStart="true">
</android.support.v4.view.ViewPager>

<android.support.v7.widget.RecyclerView
    android:id="@+id/oneListView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_below="@id/view_pager">

</android.support.v7.widget.RecyclerView>
</RelativeLayout>

</android.support.v4.widget.NestedScrollView>