我有一个我最初使用UITableViews制作的通用iOS应用程序,但现在是时候用UICollectionViews更新它了,这样我就可以更好地利用iPad上的显示效果。
UITableView附带了很多功能,我感觉自己因为网格布局等的灵活性而失去了很多功能。
例如,单元格之间的分隔线是我必须自己实现的。没问题太多了。
或Header视图,我知道如何添加它们,但似乎我必须手动编码设置以尝试模仿UITableView的样式和颜色主题,而不是仅仅具有匹配的默认值。当然,我可以尝试模仿它,但是一旦iOS 10出现并且它们改变了标题视图的外观,那么突然我的应用程序不再匹配并且看起来过时了。
但披露指标是一个更大的问题。有没有办法以内置的方式在我的UICollectionViewCell上获得披露指标?是的,我知道我可以尝试找到一个看起来类似于披露指示器的图形并将其添加到我的自定义单元格中,但是对于UITableViewCells中的内容,我并不特别喜欢这样的想法。自定义为我为UICollectionViews制作的每个单元格类型添加所有这些功能。特别是当iOS 10下降并且我的所有披露指标再次过时。
更不用说我也失去了披露指标的内置segue功能。
我错过了什么吗?是否有一些方法可以利用UICollectionView中非常好的默认值,以便它看起来像UITableView?
答案 0 :(得分:1)
UICollectionViewCell
和UITableViewCell
非常相似。它们共享类似的方法名称,类似的行为,但它们是为不同的目的而设计的。虽然UICollectionViewCell
应该在具有非常可变布局的上下文中使用(例如自适应单元格,瀑布布局等),但UITableViewCell
更加静态,主要用于列出对象。
要将某些UITableViewCell
行为转换为UICollectionViewCell
,您应该自己或使用外部库重新创建它们。
举个例子:UICollectionViewCell没有刷卡到删除手势,因此您必须将其设为by yourself或using a lib。
在这种情况下,可以用自定义图像和按钮替换公开指示符。您可以从iOS 9 Photoshop文件中获取它们,如this。