Pet*_*sey 20
从Xcode 3.2开始,Mac应用程序模板还附带了一个已经连接的应用程序委托,它具有这样的方法.
要在Xcode 3.2之前创建的项目中进行设置,请为您的委托创建一个新类作为其实例.我通常将我的名字命名为"AppDelegate".您可以通过右键单击Classes组并选择"Add File",然后选择Cocoa NSObject子类文件模板来完成此操作.
打开刚刚创建的标题(AppDelegate.h).给它你想要的任何实例变量.然后点击Go to Counterpart.这会将您带到实现文件(AppDelegate.m).applicationDidFinishLaunching:在这里添加您的实例方法.与iPhone不同,这是一个通知处理程序方法,因此需要NSNotification实例而不是NSApplication实例.
现在把它连接起来.在Resources组中,打开MainMenu.nib.将"对象"从"库"窗口拖到顶级nib窗口(其中包含图标的窗口,例如"文件"的"所有者"和"第一响应者").选择刚刚创建的对象,然后打开"标识"检查器.将对象的类设置为AppDelegate,与您在Xcode中使用的名称相匹配.右键单击文件所有者,然后从其delegate出口拖动到新对象.
在Xcode中,向您的applicationDidFinishLaunching:方法添加NSLog语句.点击Save All,然后点击Build and Go.切换回Xcode并打开调试器控制台.如果你做的一切都没事,我没有忘记任何事情,你应该看到那里的日志信息.
- (id)init
{
if (self = super init]) {
[NSApp setDelegate:self];
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
您也可以在Interface Builder中执行此操作; 从MainMenu.xib中的"文件所有者",只需将"委托"插座拖到您的对象上即可.您可能想要考虑使用-awakeFromNib.
| 归档时间: |
|
| 查看次数: |
8340 次 |
| 最近记录: |