【问题标题】:ListView+Viewpager AndroidListView+Viewpager Android
【发布时间】:2015-12-03 08:30:50
【问题描述】:

我对实施设计感到困惑。我有一个要在 ListView 中显示的项目列表。现在我想要实现的是列表视图将显示前 4 个项目并查看下一组项目,我想启用视图寻呼机而不是垂直滚动,即下一组 4 个项目应该出现在视图的下一页寻呼机。

抱歉,我只是想拍一张清晰的照片。 我怎样才能做到这一点?谢谢。

编辑* 如果我有一个包含 8 个项目的列表,就像这样。

【问题讨论】:

    标签: android listview android-viewpager android-recyclerview cardlayout


    【解决方案1】:

    看看使用列表视图。只需将您的前四项作为受访者展示即可。 然后列表 View 的第五项将是 View Pager。并将前四个元素之后的所有剩余数据列表传递给此视图分页器适配器,它将在视图分页器的水平滚动中显示其余元素。但不要在同一层次结构中使用列表视图和视图寻呼机。这将导致您在滚动和触摸事件中出现问题。您可以对列表视图中的不同项目使用不同的视图。最好切换到回收站视图而不是列表视图。只需让第五个元素查看 viewPager。 我希望这能解决你的问题。如果您在实现此目标时遇到任何问题,请告诉我。

    嘿,正如你所说,我用 ViewPager 和 RecyclerView 做了一些解决方法。看看下面的屏幕截图。我希望你也想达到同样的目标。对于任何问题,请发表评论。一旦我有时间,我会尽力帮助你。你可以在https://github.com/MacSimmy/SpannableRecyclerViewExample 找到源代码,这是我的 Github 个人资料。 enter image description here

    【讨论】:

    • 感谢您的回复。如果我使用 recyclerview 在 vi​​ew pager 的第一页上显示卡片中的前四个项目,然后继续使用 viewpager 以 4 个一组的形式显示下一个项目。我该怎么做?你能解释一下层次结构吗?
    • 请看我添加的图片
    • 在这种情况下,使用视图寻呼机并将回收站视图作为此视图寻呼机的项目视图。只需在每个页面 RV 中显示四个项目。
    • 看到这是你必须通过一些代码逻辑处理的东西。只是为了例如,假设您有包含 20 个项目的 dataList。在 viewpager 适配器中,getItemCount() 方法,返回 (dataList.size()%4==0)?dataList.size()/4?datList.size()/4 + 1;通过这种方式,viewpager 有 5 个项目计数
    • 而在 public Object instantiateItem(ViewGroup container, int position) {} 方法中,只需将所需的 4 项数据列表传递给 RecyclerView Adapter。就像位置 1 一样,将 dat 列表的前 4 个元素传递给 rv 适配器。就像从一个位置到另一个位置+4 项列表数据到 RV 适配器。希望你明白了
    【解决方案2】:

    我认为 recyclerview 是最好的,我之前实施过它

    你只需要记住两件事。

    (1)vertical recyclerviews 所有行contant horixzontal recyclerview(可见/不可见)。

    (2) 如果行有图像,则可见不可见的男士将其放入 VISIBLE,否则 GONE。

    为什么不使用 LISTVIEW:= 因为在带有 viewpager 的列表视图中会出现手势问题。 处理它的代码要复杂得多。 这就是为什么易于使用RECYCLERVIEW

    【讨论】:

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