2015-02-09 41 views
0

我正在製作一個Cocoa應用程序,以前我所有的代碼都在AppDelegate.swift中。我想寫一個擴展名,但它不會讓我在那裏做,所以我創建了另一個類,並在其中粘貼了我的代碼。將所有對象重新連接到它們各自的Xib之後(對不起,如果我的技術術語有點關閉),代碼與初始化完全相同。我使用了以前在AppDelegate.Swift中工作的 func applicationDidFinishLaunching(aNotification: NSNotification) ,但現在不再執行。是否有一個原因?Swift應用程序初始化不起作用

回答

0

事實證明,我只是需要從我的新類代理添加到AppDelegate.swift。現在至少發起了一些工作,但不幸的是,現在我寫的所有東西都在崩潰。好吧。

0

我沒有很好地理解你的問題是什麼,反正你可以按照下列步驟操作:

  1. 創建類(假設是一個UIViewController
  2. ViewController連接類的main storyboard(請確保您的應用程序在項目設置中使用該故事板)
  3. 要開始使用您的代碼使用方法,如viewDidLoad,viewDidAppear等,這些方法會自動觸發,如您以前使用的didFinishLaunchingWithOptions
+0

我覺得你基本上是對的;而不是使用didFinishLaunchingWithOptions,我現在使用awakeFromNib(),我理解它或多或少是一個等價的語句。 – Uzebeckatrente 2015-02-10 15:02:22

+0

@Uzebeckatrente無論如何都要小心,因爲任何這些方法都是在特定的不同時刻觸發的,這意味着在適當的時候發佈一些代碼可能會導致非常糟糕的行爲和崩潰。我的建議是瞭解所有這些是如何工作的,並確定哪一個適合你的情況,實際上'awakeFromNib()'在我看來可能不是最好的選擇。 – r4id4 2015-02-10 15:44:54