我有一个表格视图,其中单元格可以显示可变数量的信息。例如,第一个单元格可以显示2个标签,下一个单元格5个标签,第三个单元格可以显示1个标签。单元格内容存储在托管对象中。
我想将这个数据驱动,我有一个plist配置单元格。我想我可以创建一个布局管理器来读取配置数据,并可以智能地确定如何显示标签。
使用UIKit有更好的方法吗?我意识到最终我可以使用Core Text来进行文本渲染,但我希望这是一个实现细节。对于初学者,我很高兴能够动态设置UILabel。
编辑:
从配置文件中驱动此操作的一个副作用是我可以在部署应用程序后更新这些配置。我也可以考虑生成xib文件以供下载,但理想情况下我只想发送二进制文件。
答案 0 :(得分:3)
如果你正在做的只是配置一种具有可变数量标签的表格视图单元格,那么看起来这只是用于布置正确数量的标签的一次性代码。我无法从你的问题中看出你的编程布局经验水平是什么;如果您不熟悉IB之外的UI,请告诉我们。
对于“布局管理器”的更多大学思想,请考虑NIB / XIB系统实际上是数据驱动的布局引擎本身。如果你正在考虑一些通用的东西来指定显式布局和视图属性,那么考虑一下这就是XIB文件基本上是什么 - 一个模式化的XML布局。请参阅命令行工具ibtool
的文档(联机帮助页here),详细了解如何操作它们。
如果您的布局需求特定于您的应用程序,但过于笼统,无法处理一组固定的XIB,那么请考虑像您描述的轻量级管理器。但是在开始构建超级通用的东西之前,我会认真思考。这里的Zawinski's law相当于任何布局管理器最终都会包含越来越多的XIB功能。