MainMenu という名前のクラスが 1 つあります。このクラスには、NSWindow と NSView という 2 つのパラメーターを持つ switchViews というメソッドがあります。
次に、「applicationDidFinishLaunching」でこのメソッドを使用したいAppDelegateがあります。
したがって、AppDelegate.hi では 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];
}