iphone - 布局管理器,还是有更好的解决方案?

标签 iphone ipad uikit ios

我有一个表格 View ,其中单元格可以显示可变数量的信息。例如,第一个单元格可以显示 2 个标签,下一个单元格可以显示 5 个标签,第三个单元格可以显示 1 个标签。单元格内容存储在托管对象中。

我想让这个数据驱动,我有一个 plist 来配置单元格。我在想我可以创建一个布局管理器来读取配置数据并智能地确定如何显示标签。

有没有更好的方法来使用 UIKit 做到这一点?我意识到最终我可以使用 Core Text 来进行文本渲染,但我希望这是一个实现细节。对于初学者来说,我很高兴拥有动态设置的 UILabel。

编辑:

从配置文件驱动它的一个副作用是我可以在应用程序部署后更新这些配置。我也可能会考虑生成 xib 文件以供下载,但理想情况下我只想提供二进制 plist。

最佳答案

如果您所做的只是配置具有可变数量标签的单一类型的表格 View 单元格,那么这似乎只是用于布置正确数量标签的一次性代码。我无法从您的问题中完全看出您在进行程序化布局方面的经验水平;如果您是在 IB 之外做 UI 的新手,请告诉我们。

谈到“布局管理器”的更多想法,请考虑 NIB/XIB 系统本身实际上是一个数据驱动的布局引擎。如果您正在考虑足够通用的东西来指定 View 的显式布局和属性,请考虑这就是 XIB 文件的基本内容——一种模式化的 XML 布局。见命令行工具ibtool的文档(manpage here)以了解有关如何操作它们的更多信息。

如果您的布局需求对您的应用程序来说足够具体,但过于笼统而无法使用一组固定的 XIB 来处理,那么请考虑像您描述的那样轻量级管理器。但在开始构建 super 通用的东西之前,我会认真思考。相当于Zawinski's law这是任何布局管理器最终都会包含越来越多的 XIB 功能。

关于iphone - 布局管理器,还是有更好的解决方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3908195/

相关文章:

iphone - UIButtonTypeRoundedRect 作为 accessoryView

ios - 带 UIRefreshControl 的水平 UICollectionView

iphone - 适用于可用国家/地区的 UIPickerView

iphone - 是否可以使用 Microsoft 管理的 EWS 通过 MonoTouch 构建 iPhone 应用程序?

iphone - 如何隐藏 UITableView 标题然后让它重新出现?

iphone - 如何显示从最新到最旧排列的相册

ios - 在图像上绘画 (UIImageView) ipad 应用程序

ios - 如何将百分比值精确舍入到小数点后两位双倍?

swift - 当模态视图(第二个 VC)关闭时刷新 ViewController 中的核心数据

iphone - 核心数据 : any way to fetch multiple entities?