18

我有一个应用程序,它将显示超过 1000 个项目,所有这些项目详细信息都是本地的(通过 coredaata 保存)并将随应用程序一起提供。

在研究显示这些项目的 UI 机制时,我介于选择带有自定义单元格的 uicollectionview 或 tableviewcontroller 之间。我的问题是:哪种选择在拖动方面会更有效并提供更流畅的 UI?我可以自定义哪一个来加载我只有足够的 1000 个条目以提供平滑滚动,并根据需要加载更多单元格?

谢谢。

4

2 回答 2

20

如果您遵循视图/单元重用的良好做法,这两种方法都可以轻松处理 1000 个条目。此外,这两个 API 都非常相似,因此从一个跳转到另一个并不难。

两者之间的主要区别在于您希望如何显示这 1000 个项目。UITableView有几种样式的单元格相互堆叠。你不应该试图弯曲它来做任何比那种布局复杂得多的事情。UICollectionView是一组更强大的类,它允许修改数据在屏幕上的显示方式的几乎所有方面,特别是它的布局,还有其他东西。您几乎可以UITableViews在每个 iOS 应用程序中看到(例如联系人或 iPod),但UICollectionViews更难看到(照片中的网格,还有 iPod 中的封面流)。

所以,如果你需要像 iOS 中大多数表格视图这样的标准,我会UITableView选择UICollectionView.

于 2013-06-18T21:19:16.803 回答
16

It's slightly unclear what you're asking, so I have summerized the advantages of both.

UITableView

UITableView is the base mechanism for displaying sets of data on iOS. It's a simple list, which displays single-dimensional rows of data. It's smooth because of cell reuse and other magic.

UICollectionView

UICollectionView is the model for displaying multidimensional data - it was introduced just a year or two ago with iOS 6, I believe.

It's also smooth because of the same tactics used in UITableView - cell reuse, etc.

于 2013-06-18T21:13:10.493 回答