我是 mac/objective-c 的新手。我的问题是:我想知道是否可以将 UILabel 文本绑定到变量,而不必在值更改时手动设置文本。
例如,在 Mac OS 上,当我打开一个新的 Finder 窗口并删除一个文件时,任务栏中的全局可用空间正在发生变化。在所有打开的“查找器”中,该值也会发生变化。
如何在 Mac 或 iPhone 上使用 Objective-c 复制这种行为?我在考虑 UILabel,但我找不到与手动设置每个 UILabel 不同的方法。
谢谢莱昂纳多
我是 mac/objective-c 的新手。我的问题是:我想知道是否可以将 UILabel 文本绑定到变量,而不必在值更改时手动设置文本。
例如,在 Mac OS 上,当我打开一个新的 Finder 窗口并删除一个文件时,任务栏中的全局可用空间正在发生变化。在所有打开的“查找器”中,该值也会发生变化。
如何在 Mac 或 iPhone 上使用 Objective-c 复制这种行为?我在考虑 UILabel,但我找不到与手动设置每个 UILabel 不同的方法。
谢谢莱昂纳多
当前版本的 iPhone OS (3.1) 不支持绑定(例如在桌面 Cocoa 中可以找到)。目前,您需要手动编写控制器胶水以使 UI 与您的模型保持同步。
具体来说,您将IBAction
在控制器中添加一个方法,并UILabel
在内容更改时连接以调用它。
这个问题之前也讨论过:
在 Mac 上,您将使用键值编码 (KVC) 并将标签绑定到 IB 中的对象控制器。绑定文档非常详细地介绍了这一点:
这是很有可能的,有两种方法可以做到。
通过在代码中创建 UILabel 并简单地设置myLabel.text.text
它以编程方式
通过 Interface Builder,您可以将 UILabel 拖放到您想要的位置,并在代码中有一个属性来连接它,然后使用该属性来设置myLabel.text
它。