我有一個名爲MainMenu的類,它有一個名爲switchViews的方法,帶有2個參數,一個NSWindow和一個NSView。來自其他類的調用方法什麼都不做?
然後我有AppDelegate,我想在'applicationDidFinishLaunching'中使用此方法。
所以在AppDelegate.h我已經進口MainMenu.h,並在AppDelegate.m我使用方法如下:
MainMenu *theMainMenu = [[MainMenu alloc]] init];
[theMainMenu switchViews:param1:param2;
沒有警告或錯誤,它只是不調用該方法。
如果我複製並粘貼方法而不是調用它,它工作正常,所以它不是一個變量的問題,它似乎只是運行該方法,如果它在不同的類中的錯誤?
任何幫助將不勝感激。
在此先感謝
switchViews方法:
- (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];
}
你可以顯示switchViews方法聲明嗎? – 2012-04-17 16:30:21
@J_D編輯後顯示方法:) – Cristian 2012-04-17 16:32:34
您確定此代碼編譯?我希望你的方法被聲明爲: - (void)switchViews:(NSWindow *)mainWindow andView:(NSView *)newView {...} – 2012-04-17 16:35:23