プログラミングを初心者で現在swiftを勉強しております。
画面遷移時に、データを受け渡すプログラムを今書いておりますが、
エラーが出てしまい止まっている状況でございます。
以下のようなコードをになりますが、どこを修正すると良いのか、
お知恵を頂けますと幸いです。
全体像をまだ理解しきれていない為、アドバイス頂く為にお出しする
情報に不足があるかもしれませんが、お力を頂けますと幸いです。
#ViewController.swift
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var txt_data1: UITextField! @IBOutlet weak var txt_data2: UITextField! override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. txt_data1.text = "" txt_data2.text = "" } override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) { print(segue.identifier) if segue.identifier == "page1" { // ViewDetailControllerへ遷移する際、値を渡す let viewDetailController: ViewDetailController = segue.destinationViewController as! ViewDetailController // データを退避 viewDetailController._data1 = txt_data1.text!
//ここでエラーメッセージが出てしまい(Thread1 : EXC_BAD_INSTRUCTION(code = EXT_1386_INVOP,subcode=0x0)と
表示されております)//
viewDetailController._data2 = txt_data2.text! } } // 戻るボタン押下時のメソッド @IBAction func unWindows(segue: UIStoryboardSegue){ if segue.identifier == "page2" { // 遷移元のControllerを取得 let viewDetailController: ViewDetailController = segue.sourceViewController as! ViewDetailController // 画面にデータを設定 txt_data1.text = viewDetailController.txt_set_data1.text txt_data2.text = viewDetailController.txt_set_data2.text } }
}
#遷移後のページ
import UIKit
class ViewDetailController: UIViewController {
@IBOutlet weak var txt_set_data1: UITextField! @IBOutlet weak var txt_set_data2: UITextField! var _data1 = "" var _data2 = "" override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. // ここで設定 txt_set_data1.text = _data1 txt_set_data2.text = _data2 } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. }
}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/02/19 03:45