在浏览一些示例代码时,请注意在选择"基于文档的应用程序"选项时,在IB中设置主窗口标题无效.Window将以"Untitled"作为标题.我们需要在MyDocument:NSDocument中覆盖 - (NSString*)displayName {}以便设置窗口标题.只是希望xcode的一些专家可以解释为什么会这样.也就是说,当我们在最初生成项目时检查"创建基于文档的应用程序"选项时添加到系统中的内容是什么?
Cal*_*leb 13
了解当您从Xcode中的模板创建项目时,Xcode并不真正生成任何代码.当然,它可能会填写您的名字,项目名称等的几个空白.但您获得的内容实际上是您选择的项目类型的预制起始码.当您选中"基于文档"选项时添加的内容是为您的应用定义合理名称的NSDocument子类.
看看苹果的"人机界面指南",比如这个,你会发现文档窗口应该根据它们显示的文档来标题.因此,基于文档的应用程序的默认行为是将标题设置为文档文件的文件名.
最后,查看NSDocument的参考页面,您会发现您所看到的行为是NSDocument类的一部分.特别是,如果查看-displayName方法,您将找到有关如何正确自定义窗口标题的信息.