Cocoa (Xcode 4),从另一个 NIB 更改一个 NIB 上的标签

Posted

技术标签:

【中文标题】Cocoa (Xcode 4),从另一个 NIB 更改一个 NIB 上的标签【英文标题】:Cocoa (Xcode 4), Changing Label on one NIB from another NIB 【发布时间】:2011-06-21 12:54:35 【问题描述】:

简单的任务: 我有一个包含 2 个 NIB 文件的应用程序(每个 NIB 文件都有自己的控制器)。 我已经成功地显示了第二个 NIB 文件的窗口,但是现在,我想单击 NIB 2 上的按钮并更改 NIB 1 上的标签。

现在NIB上的outlet的连接已经完成,问题似乎是告诉Controller2改变Controller1中的标签。

我似乎无法完成它。有没有像

这样的简单调用
[Controller1 [Label setStringValue: @"Hi"]]; 

(我还尝试创建一个方法来更改 Controller1 中的 Label,然后在 Controller2 中实例化 Controller1 的一个对象并调用我新创建的 ChangeLabel 方法。这不会产生错误,但它也没有给我结果)。

感谢您的帮助!

【问题讨论】:

【参考方案1】:

我认为你想要的是使用委托。

您应该声明一个要在 Controller1 中实现的委托方法,该方法采用 NSString 类型的参数(您的标签),该参数在 Controller2 中设置>。

【讨论】:

以上是关于Cocoa (Xcode 4),从另一个 NIB 更改一个 NIB 上的标签的主要内容,如果未能解决你的问题,请参考以下文章

Cocoa touch/Xcode - 生成 NIB-less 图形上下文

Cocoa:从另一个窗口创建并关闭一个窗口

Cocoa - 将 IBOutlet 链接到单独的 Nib

XCode/Cocoa Mac 改变视图

Cocoa App 窗口有随机焦点

Cocoa 多次同时加载 nib 模板