【问题标题】:ViewPager in a ListView - how to lock the scrolling axis?ListView 中的 ViewPager - 如何锁定滚动轴?
【发布时间】:2011-10-26 09:27:00
【问题描述】:

我在 ListView 的每一行都有一个 ViewPager 小部件。这提供了一个类似于架子的 UI,因此用户可以在垂直方向上滚动搜索架子,然后在架子的内容之间水平滚动。这行得通。

但是滚动体验很糟糕:如果我开始拖动一个架子的 ViewPager,水平滚动它,然后不小心向上/向下拖动了一点,那么 ListView “陷阱”这个拖动动作,并开始垂直滚动,结束我的水平拖动。在这种状态下,拖动动作不会“返回”到 ViewPager,ListView 有它,仅此而已。我必须开始另一个拖动操作才能再次影响 ViewPager。所以我猜在这些情况下 ListView 有优先权。

如何解决这个问题?我想实现完全相反:如果列表行内的 ViewPager 开始对水平拖动做出反应,那么它应该捕获该动作,并且无论用户如何移动他/她的手指,这种拖动都应该停止影响 ListView垂直。这个可以吗?

【问题讨论】:

  • 在这里找到答案:stackoverflow.com/questions/2646028/…
  • 在这种情况下,最好的办法是关闭这个问题作为重复(如果你觉得问题足够接近),或者如果它们足够不同,提交链接作为答案,并将其标记为“选定答案”。这样一来,它就不会再显示为一个赞成的、未回答的问题了:)
  • 你说得对,这个显示为未回答的问题令人困惑,我已经添加了一个正确的答案。我认为它已经足够不同了,我不会将其标记为完全重复。
  • 嗨@ZsomborErdődy-Nagy,您能告诉我如何将视图寻呼机添加为列表视图行吗??

标签: android android-listview android-viewpager


【解决方案1】:

我在this 线程中找到了解决方案。问题是在常规 ScrollView 中正确处理 Horizo​​ntalScrollView 的触摸事件,但该问题的解决方案似乎也适用于这个问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多