【问题标题】:ListView alternative列表视图替代
【发布时间】:2013-11-28 17:50:53
【问题描述】:

我不能使用列表视图,因为我需要在屏幕上显示滚动视图。什么是最好的替代方法,我可以将我创建的 .xml 文件传递​​给它,该文件包含我希望被视为单个列表项的所有视图。

编辑

我不能使用列表视图,因为列表视图不应该是 ScrollViews 的子视图

【问题讨论】:

  • 为什么不能使用ListViewListView 能够将任何 xml 布局显示为其单个项目。请更具体地说明您的问题。
  • 具体来说就是把所有需要滚动的项目都放到ListView中。
  • 我不能使用列表视图,因为列表视图不应该是 ScrollViews 的子视图 - 这几乎不是一个有效的论点。正如@CommonsWare 所指出的,您应该更改布局,使ListView 成为主要的滚动容器。也就是说,利用页眉和页脚视图的内置功能。如果需要,您甚至可以使用 MergeAdapter 之类的东西。
  • ...MergeAdapter MH 可能指的是我的:github.com/commonsguy/cwac-merge
  • 如果它仍然相关,你可以使用一个 ViewGroup,给它一个比你想要的屏幕区域更大的尺寸,然后把它放在一个 ScrollView 中。它将在视口内滚动。

标签: android listview android-listview scrollview android-scrollview


【解决方案1】:

有一个您需要的方向的LinearLayout

在您的Activity/Fragment 中,循环查找您想要添加到视图中的所有项目(类似于ListViewAdapter 的getView()。

在循环的每次迭代中,扩充通用视图布局 xml 文件。对布局内的视图执行您必须执行的操作。

在循环的每次迭代结束时,将新膨胀的视图添加到线性布局中。

本质上,您只是在模仿ListView 无论如何都应该做的事情。

【讨论】:

  • In essence, you are just emulating what the ListView should be doing anyways 什么? ListView 完全是关于 View 回收。我没有看到你的方法会发生这种情况。
  • @M-WaJeEh 功能的功能总是先于性能。我知道ListView 使用视图回收,但当他选择不使用ListView 时,他决定放弃这一点。我只是从功能的角度进来,因此使用了“仿真”一词。通常,仿真不如真实的那样高效/有效。
猜你喜欢
  • 2018-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-30
相关资源
最近更新 更多