我正在尝试实现下图中显示的界面视图。
此UI由三部分组成,蓝色标签,箭头标签和灰色标签。
在此UI中,满足以下要求。
目前我认为通过UITableView和自定义表格单元实现此UI是很好的。但我不确定如何实现它,尤其是在蓝色标签之间显示箭头标签,在灰色标签之前添加新的蓝色标签。
有没有一种很好的方法可以在UITableView中轻松实现这些功能?或者,有没有其他方法可以做到这一点,比如使用UIScrollView?
您的想法和帮助将受到极大的赞赏。
答案 0 :(得分:0)
如果您正在为iOS9构建,您可以使用UIStackView,使用非常简单并且符合您的要求。您必须使用UIStackview和scrollview。 对于示例,您可以使用以下链接中的代码。
答案 1 :(得分:0)
不要使用UIScrollView。随着蓝色单元格数量的增加,您将使用越来越多的内存。正确使用UITableView可确保随着单元格数组长度的增加,内存使用保持不变(来自UI的内存)。
这里有两个基本选项:
多个部分或单个部分。
对于多个部分,每个UITableViewCell都是一个蓝色单元格。使用UITableViewSectionFooter作为箭头单元格。这保证了每个蓝色单元格上总是有箭头单元格。
使用单个部分,单元格数= #ofbluecells * 2.然后,使用indexPath.row%2来决定是否使蓝色单元格或箭头单元格出列。
无论您采用哪种方法,都应该使用UITableViewFooterView来“添加新单元格”行为。
在任何一种方法中,您都可以通过更新数据模型(很可能是数组)然后调用[tableView beginUpdates]来删除单元格; [tableViewDeleteRowsAtIndexPaths:]; [tableView endUpdates];
要插入新的蓝色单元格,除了添加到数组之外,与删除相同。
在任何一种方法中,您都不必管理单独的箭头单元格数组。如果点击箭头单元格什么都不做,我个人会按照每个蓝色单元格划分1个部分。