我有一个状态栏应用程序的 NSMenu,在 AppDelegate.h 中定义如下:
IBOutlet NSMenu *spotMenu;
@property (nonatomic, retain) IBOutlet NSMenu *spotMenu;
在 AppDelegate.m 中是这样的:
[spotApp setMenu: spotMenu];
- (NSMenu *) spotMenu
{
return spotMenu;
}
我正在尝试从另一个类中访问它,如下所示:
另一个类.h
@class AppDelegate;
AppDelegate *appD;
另一个类.m
#import "AppDelegate.h"
NSLog(@"%@", [appD spotMenu]);
它返回空值。
2012-09-23 10:23:37.543 Spot[581:303] (null)
当我在 AppDelegate 类中执行相同操作时,如下所示:
NSLog(@"%@", spotMenu);
它返回正确的内容:
2012-09-23 10:56:05.460 Spot[679:303] <NSMenu: 0x100618030>
Title:
Supermenu: 0x0 (None), autoenable: YES
Items: (
"<NSMenuItem: 0x100618170 About Spot>",
"<NSMenuItem: 0x10011b9b0 Preferences>",
"<NSMenuItem: 0x1001b9390 >",
"<NSMenuItem: 0x1001bbe70 >",
"<NSMenuItem: 0x1001b99a0 Quit Spot>"
)
有什么方法可以从另一个类获得与 AppDelagate 类相同的输出?
谢谢你。