以编程方式更改由故事板创建的窗口的标题

时间:2015-01-08 20:14:18

标签: storyboard xcode6 osx-yosemite xcode-storyboard

在xcode 6.1中,如何以编程方式更改由storyboard创建的窗口的标题?该项目适用于OS X.默认情况下,它是" Window"。我正在使用OBJ C。

2 个答案:

答案 0 :(得分:10)

Swift中的代码是

override func viewDidAppear() {
    self.view.window?.title = "joe"
}

并且在Objective-C中大约是self.view.window.title = @"joe";

必须在viewDidAppear,因为viewDidLoad太早了。


OT,但是要通过Storyboard来实现它:

enter image description here

答案 1 :(得分:0)

在 Apple 用于 macOS 的常见 Objective-C Xcode 模板的 AppDelegate 上下文中,您可以通过以下代码行访问主窗口句柄:

[[[NSApplication sharedApplication] mainWindow] setTitle:@"Your Title"];

或者只是使用共享应用实例的全局常量简写:

[[NSApp mainWindow] setTitle:@"Your Title"];

这些示例首先检索应用程序的实例,然后获取它的主窗口。请注意,如果应用的故事板或 NIB 文件尚未完成加载,则应用处于非活动状态或隐藏状态,标题可能无法应用。

以上假设您有一个带有层次结构的 Main.storyboard Window Controller Scene > Window Controller > Window -- 带有非自定义标识符==Automatic 并且没有子类化这个 NSWindow。