私はちょうどスウィフトの基本を学んでいます。私はアイテムのテーブルビューを持っており、アイテムがクリックされると、その特定のアイテムの詳細を表示するビューを表示したい。私はこれを達成しようとしている以下のコードを持っていますが、Bad Instructionランタイムエラーが発生しています。私がどこに間違っているのか?ありがとう!swift現在モーダルになっています。悪い指示があります
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destinationViewController.
// Pass the selected object to the new view controller.
super.prepare(for: segue,sender: sender)
switch(segue.identifier ?? "") {
//the add item button is pressed
case "AddItem":
os_log("Adding a new donation.", log: OSLog.default, type: .debug)
//an existing item is pressed
case "ShowDetailDrill":
guard let itemViewController = segue.destination as? ItemViewController else {
fatalError("Unexpected destination: \(segue.destination)")
}
guard let selectedDonationItemCell = sender as? DonationItemCell else {
fatalError("Unexpected sender: \(sender)")
}
guard let indexPath = tableView.indexPath(for: selectedDonationItemCell) else {
fatalError("The selected cell is not being displayed by the table")
}
let selectedDonation = donatedItems.getItem(index: indexPath.row)
//TODO: load this to SubmissionVC
itemViewController.donatedItem = selectedDonation
default:
fatalError("Unexpected Segue Identifier; \(segue.identifier)")
}
}
私はそれがアップデート2
ここで壊れることを言及するのを忘れ
更新:[OK]をので、私はナビゲーションコントローラを削除してからセグエを変更「現代的に現れる」から「見る」まで。セルからアイテムコントローラに直接移動します。すべてが現在動作していますが、ナビゲーションコントローラーと連携していない理由についてまだ多少混乱しています。なぜ誰かがその理由を説明することができれば、それを答えとしてマークします。
おそらく何かはありません。どのラインがクラッシュするのですか? – Paulw11
エラーログを共有してください。 – ocanal
[例外ブレークポイントを追加する](http://stackoverflow.com/a/17802723/1457385)、クラッシュする箇所を確認してください。 – shallowThought