web-dev-qa-db-ja.com

applicationDidFinishLaunchingが呼び出されない

私のappdelegate.mでは、applicationDidFinishLaunchingが呼び出されていません。これは、「アプリケーション」のデリゲートが正しく接続されていないことが原因であると読みましたが、接続方法がわかりません。私がやっていることは、XIBファイルからアプリケーションを右クリックし、デリゲートアウトレットをどこかにドラッグすることです...しかし、どこにあるのかわかりません。助けていただければ幸いです。ありがとう!

31

MainMenu.xibに、AppDelegateクラスのインスタンスがあることを確認してください。 1つを作成するには、プレーンオブジェクト(青い立方体)をリストにドラッグし、そのクラス名をAppDelegate(またはアプリデリゲートクラス名)に設定します。

また、MainMenu.xibで接続するには、接続をApplicationオブジェクトからAppDelegateインスタンス(青い立方体)にドラッグし、デリゲートアウトレットに接続します。

完了。

48
Joshua Nozzi

Swift 3:に更新した場合は、次のことを試してください。

「AppDelegate.Swift」をのぞいて、関連する行が次のようになっていることを確認してください。

func applicationDidFinishLaunching(_ aNotification: Notification) {

これとは対照的に:

func applicationDidFinishLaunching(_ aNotification: NSNotification) {

アプリをアップデートしたばかりで、チェックしようとは思いませんでした。その結果、アプリが起動しましたが、関連するメソッドが呼び出されることはありませんでした。明らかに、Notificationオブジェクトを受け取る他の関数をチェックする必要があります。

5
Charlesism