【问题标题】:Vertical ViewPager with ScrollView inside带有 ScrollView 的垂直 ViewPager
【发布时间】:2014-09-23 07:52:32
【问题描述】:

我在我的活动中实现了这个https://stackoverflow.com/a/22797619/3064486 (Vertical ViewPager)。 我的适配器放在 viewpager 中的片段中有一个滚动视图。

当我到达滚动视图的底部时,它不会在 viewpager 中切换页面。但是,如果我从右下角或左下角滑动它会起作用,这有点难以解释,但它会跳过完整滑动的 20-30%(从第 1 页到第 2 页),如果我立即释放它会返回我也可以滑动继续页面切换。

我相信我的滚动视图是这里的问题..

ViewPager

<com.mypackage.MyVerticalViewPager>

片段

<LinearLayout>
    <ScrollView>
       <!-- massive amount of stuff -->
    </ScrollView>
</LinearLayout>

我在这里尝试过答案:

https://stackoverflow.com/a/14435116/3064486

编辑:我试过这个 https://github.com/castorflex/VerticalViewPager/blob/master/library/src/main/java/fr/castorflex/android/verticalviewpager/VerticalViewPager.java 并让垂直滚动工作。 ScrollView 也可以,但是当我到达底部时,我需要真正挥动手指才能到达另一页。我想我必须为滚动视图删除某种过度滚动。有人知道吗?

【问题讨论】:

  • 你的问题解决了吗?

标签: android android-viewpager android-scrollview


【解决方案1】:

使用 ListView 代替 ScrollView 可以解决这个问题。由于 ScrollView 在其 onTouchEvent 方法上调用 parent.requestDisallowInterceptTouchEvent(true) 方法,滚动冲突很难处理,我也在处理这个问题,完成后我会给出我的解决方案。

【讨论】:

  • @JonasB 我不认为fling 是好的用户体验,如何让用户知道他在想要滚动到下一页时应该fling。
  • 使用ListView,可能开发者做UI比较难,但是带来了更好的用户体验。阿里巴巴旗下的淘宝等著名应用(拥有约 1 亿用户)使用此解决方案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-09-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多