【问题标题】:How to scroll ViewPager both horizontally and vertically in Android?如何在 Android 中水平和垂直滚动 ViewPager?
【发布时间】:2016-03-14 01:47:50
【问题描述】:

我有一个 ViewPager,它的内容是在运行时确定的。内容大小可能大于屏幕尺寸,所以我想将 ViewPager 放在一个 NestedScrollView(它启用垂直滚动)内,它位于一个 Horizo​​ntalScrollView(它启用水平滚动)内。这解决了适合内容的问题,但我无法滚动 ViewPager 选项卡 - 可能 ViewPager 不再接收水平滚动。

例如,在内容宽度大于屏幕宽度的情况下,我的初始滚动应该首先滚动到内容边缘的末尾 - 然后应该加载来自 FragmentAdapter 的新内容。但是使用嵌套滚动视图方法,我无法从 FragmentAdapter 加载下一项。

我的代码:

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

    <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent">

            <android.support.v4.view.ViewPager
                android:layout_width="match_parent"
                android:layout_height="wrap_content" />

        </RelativeLayout>

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

这种方法有另一种选择。把外面的Horizo​​ntalScrollView 放下,把ViewPager 的FragmentAdapter 的内容放到一个Horizo​​ntalScrollView 里面。我尚未尝试此解决方案 - 但这会导致我更改并重新测试 FragmentAdapter 的所有现有布局文件。

【问题讨论】:

  • 使用 ViewPager 进行水平滚动。并使用 RecyclerView 在 vi​​ewpager 内容中实现垂直滚动。
  • 如果viewpage内容的宽高超过屏幕尺寸怎么办?

标签: android android-viewpager android-scrollview horizontalscrollview viewpagerindicator


【解决方案1】:

您可以使用以下参考。良好的实施。

DoubleViewPager

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-17
    • 2017-05-02
    • 2016-10-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多