![](/img/trans.png)
[英]What is the best way to increment NSDateComponents in specific intervals in Objective-C?
[英]What is the best way to implement this scrolling UI in Objective-C?
我正在尝试实现下图所示的界面视图。
该UI由三部分组成,蓝色标签,箭头标签和灰色标签。
在此UI中,需要满足以下要求。
目前,我认为通过UITableView和自定义表格单元来实现此UI是很好的。 但是我不确定如何实现它,特别是在蓝色标签之间显示箭头标签,在灰色标签之前附加新的蓝色标签。
有没有一种很好的方法可以在UITableView中轻松实现这些功能? 或者,还有其他方法可以做到,例如使用UIScrollView吗?
您的想法和帮助将不胜感激。
如果您要针对iOS9进行构建,则可以使用UIStackView,它非常易于使用并且符合您的要求。您必须将UIStackview与scrollview结合使用。 对于示例,您可以使用以下链接中的代码。
不要使用UIScrollView。 随着蓝色单元格数量的增加,您将使用越来越多的内存。 正确使用UITableView可确保随着单元格数组长度的增加,内存使用保持固定(UI的内存)。
您在这里有两个基本选择:
多个部分,或单个部分。
具有多个部分,每个UITableViewCell是一个蓝色单元格。 将UITableViewSectionFooter用于箭头单元格。 这样可以确保每个蓝色单元格始终有一个箭头单元格。
在单个部分中,单元数= #ofbluecells *2。然后,使用indexPath.row%2决定是否出队蓝色单元格或箭头单元格。
无论采用哪种方法,都应使用UITableViewFooterView进行“添加新单元格”行为。
无论采用哪种方法,都可以通过更新数据模型(很可能是数组)然后调用[tableView beginUpdates]来删除单元格; [tableViewDeleteRowsAtIndexPaths:]; [tableView endUpdates];
要插入一个新的蓝色单元格,与删除相同,只不过要添加到数组中。
无论采用哪种方法,都不必管理单独的箭头单元阵列。 如果点击箭头单元格无济于事,我个人将每个蓝色单元格分成1个部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.