3

我是 iphone 开发新手,我目前正在使用 xcode 4.2。

我在情节提要中画了一个 UIViewController。我在 UIViewController 中放了一些标签。它与一个controller.m 文件相关联。

如何从 controller.m 文件的 viewdidload 函数更新标签中的文本?

我不知道如何获取情节提要上 uiviewcontroller 中元素的变量名称或句柄名称。

4

1 回答 1

6

如果您通过情节提要创建事物,最简单的方法是为每个 UI 元素创建一个 IBOutlet 属性。这会为 UIElement 创建一个实例属性,然后您可以在代码中引用该属性 - 设置状态、获取值等。

您可以通过在 UIElement 上按住 Control 单击并拖动到您的 UIViewController.h 文件来执行此操作(拆分视图:RETURN-Command-Option:显示对应项)。XCode 将弹出一个对话框,让您可以命名它(同样的手势也可以让您创建 IBActions - UIElement 与之交互时调用的函数)。如果这更容易,您还可以在 ViewController 中 UIElements 的左侧边栏列表上按住 Control 单击并拖动。

有 YouTube 视频比我的弱解释更能说明这一点。起初我对 @storyboard/IB 持怀疑态度,因为我不喜欢 UI魔术,更喜欢通过代码来做事,或者至少看到魔术产生的代码,但它确实工作得很好并且节省了一些乏味UI 编码。

需要注意的一个问题:如果您创建一个 IBOutlet 然后删除 UIElement,您将因为错误的引用而出现代码错误。这些很容易找到和修复。UIViewController 对象也将包含这些引用,并会导致令人不快的崩溃 - 所以按住 Control 键单击 UIViewController 对象(或使用 Inspector 面板)以及任何具有橙色三角形 == 损坏的元素。

于 2012-05-01T03:59:49.457 回答