【问题标题】:Which layout should I use for scrolling我应该使用哪种布局进行滚动
【发布时间】:2015-09-20 01:57:57
【问题描述】:

我需要在同一个视图中实现 3 个项目列表。每个项目列表不能单独滚动,但可以滚动整个视图。之前,我通过在一个 ScrollView 中包含 3 个 ListView 来做到这一点,然后将 3 个 ListView 拉伸到最大。但这会引起一些麻烦,所以我需要帮助。任何想法如何实现这一点?

【问题讨论】:

  • 我会试试的。我确实尝试过在ScrollView里面制作ListView,但是如果显示的内容不同,效果就不如预期了。
  • 它的行为不像我想要的那样。如果你有一个要显示的内容列表,有的需要 1 行,有的需要 4 或 5 行,那么这种方法是没有问题的。因为,您将需要onMeasure 内的确切宽度。我通过渲染所有视图一次解决了这个问题,然后获取确切的宽度并在回调中再次渲染它。出现的视图正是我想要的,但是还有另一个问题,因为新的View 创建了一个全新的组件(TextView、Button 等),我不希望这样,这就是为什么我需要另一种方法

标签: android scrollview


【解决方案1】:

既然您想要Each list of item cannot be scrolled individually,我建议您使用单个ListView,但要包含部分。关于如何向ListView 添加部分的教程有很多,我能找到的最快的是here

它会起作用,您只需要正确管理您的getItemViewType(int)getViewTypeCount() 方法。所以你说你想要3个不同的班级。所以你的getViewTypeCount() 应该返回 4
1 - 节标题
3 - 对于 3 个不同的类,每个类将有不同的视图。

然后您需要根据列表中的位置调整您的 getView() 方法中的视图。

【讨论】:

  • 每个项目列表,来自不同的类,所以它可能不起作用。
猜你喜欢
  • 2017-03-30
  • 2013-03-13
  • 1970-01-01
  • 1970-01-01
  • 2012-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多