私のストーリーボードエントリポイントとして機能するビューのViewDidLoadメソッドにif ... thenステートメントがあります。Segueは機能しません。理由はわかりません
基本的に、コアデータにデータがあるかどうかをチェックして、小さな「セットアップフォーム」を完了したことを示します。
コアデータが空であるか、アプリケーションが正しく設定されていないことがわかった場合は、自動的にセグを使用して設定ビューにキックバックする必要があります。
私のviewDidLoadメソッドは次のようになります。
override func viewDidLoad() {
super.viewDidLoad()
//Get any entries from the App Settings Entity
getAppSettings()
//If any entries are found, check to see if the setup has been completed
if (appSettings.count > 0) {
print("We found entries in the database for App Settings")
if (appSettings[0].setupComplete == false) {
print("Setup has not been completed")
self.performSegue(withIdentifier: "toAppSettings", sender: self)
} else {
print("Setup is completed")
//Load the settings into global variables
preferredRegion = appSettings[0].region!
usersName = appSettings[0].usersName!
}
} else {
print("We found no entries in the database for App Settings")
self.performSegue(withIdentifier: "toAppSettings", sender: self)
}
}
私はセグエが存在しないことを確認しました、と私は引用符でそれを持っているようにセグエの識別子が正確に(私もコピー&すべて貼り付けられていることそれらがすべて一貫していることを確認するためのインスタンス)。
私はまた、余分なマイルを行って、それが呼ばなっていたかどうかを印刷するには、「セグエの準備」の方法でチェッカーを入れて、そして誰が送信者がいた:
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
print("We're getting ready to segue!")
print(segue.identifier)
}
これらのアイテムの両方が印刷されますログには、segueが認識されていることと、アプリがそれを起動しようとしていることがわかります。しかし、何らかの理由で私が理解できないことは、単に発射していないということです。
私はここで何が不足していますか?