我有一个名为 MainMenu 的类,它有一个名为 switchViews 的方法,有 2 个参数,一个 NSWindow 和一个 NSView。
然后我有 AppDelegate,我想在“applicationDidFinishLaunching”中使用这个方法。
所以在 AppDelegate.hi 中导入了 MainMenu.h,在 AppDelegate.m 中我使用如下:
MainMenu *theMainMenu = [[MainMenu alloc]] init];
[theMainMenu switchViews:param1:param2;
没有警告或错误,它只是不调用该方法。
如果我复制并粘贴该方法而不是调用它,它可以正常工作,因此变量不是问题,如果它在不同的类中,似乎只是运行该方法时出错?
任何帮助将不胜感激。
提前致谢
切换视图方法:
- (void)switchViews:(NSWindow*)mainWindow:(NSView*)newView {
NSView *dummyView;
[theMainWindow setContentView:dummyView];
[theMainWindow setContentSize:newView.frame.size];
[theMainWindow setContentView:newView];
}
编辑:对不起,这只是一个错字。
解决方案:我在方法调用中使用了错误的参数。下面是工作代码:
- (void)switchViews:(NSWindow*)mainWindow:(NSView*)newView {
NSView *dummyView;
[mainWindow setContentView:dummyView];
[mainWindow setContentSize:newView.frame.size];
[mainWindow setContentView:newView];
}