2016-03-04 100 views
7

我有一个通用的iOS应用程序,我最初使用UITableViews,但现在是时候用UICollectionViews更新它,以便我可以更好地利用iPad上的显示。使UICollectionView看起来像UITableView

UITableView伴随着很多功能,我觉得我失去了一吨,以换取网格布局等的灵活性。

例如,单元格之间的分隔线是我必须自己实现的。没有太多问题。

或者Header视图,我知道如何添加它们,但似乎我必须手动编码设置以尝试模仿UITableView的样式和颜色主题,而不是仅仅匹配默认值。当然,我可以尝试模仿它,但只要iOS 10出来,他们改变了标题视图的外观,突然我的应用程序不再匹配,看起来过时了。

但披露指标是一个更大的问题。有没有办法以内置的方式在我的UICollectionViewCell上获得披露指标?是的,我知道我可以尝试找到一个看起来类似于披露指示符的图形,并将其添加到我的自定义单元格中,但对于粘贴到UITableViewCells的某些内容,我并不特别喜欢必须自定义的想法将所有这些功能添加到我为UICollectionViews制作的每个单元类型中。特别是当iOS 10下降并且我的所有披露指标都再次过期时。

更何况,我也失去了披露指标的内置segue功能。

我错过了什么吗?有什么方法可以利用UICollectionView中非常好的默认设置,使它看起来像UITableView?

回答

1

UICollectionViewCellUITableViewCell非常相似。他们共享类似的方法名称,类似的行为,但它们是为不同目的而设计的。虽然UICollectionViewCell应该用于具有非常可变布局(例如,自适应单元格,瀑布布局等)的上下文中,但是更加静态并且主要用于列出对象。

要将UITableViewCell行为的某些行为转换为UICollectionViewCell,您应该自己或使用外部库重新创建它们。 只是一个例子:UICollectionViewCell没有滑动删除的手势,所以你必须使它by yourselfusing a lib。 在这种情况下,披露指示符可以用自定义图像和按钮来代替。您可以从iOS 9 Photoshop文件(如this)中获取它们。

参考:Setting Up a UICollectionView in iOS

+0

我问,如果有一种方法内置,使它们看起来是一样的,否则我马上就是过时的。正如我在我的问题中所说:“当然,我可以尝试模仿它,但只要iOS 10出来,他们改变了标题视图的外观,突然我的应用程序不再匹配,看起来过时了。” –

+0

好的,但是如果没有任何本地方式来实现UITableViewCell外观,如果你没有模仿它,你怎么能有相同的行为? –

+0

'但是如果没有任何本地方式来实现UITableViewCell的外观和感觉' 这是我的问题。 IS有一种原生的方式让UICollectionViewCells采用标准的UITableViewCell的外观和感觉? –