前提・実現したいこと
Detail SceneからTable View(?)のタイトルに影響を与えるためにBOOL値を渡したいです。
XcodeでMaster Detail App(フレームワークというのでしょうか)を使ってアプリを作ろうとしています。言語はswift。思いつく方法がセグエしか無かったのでセグエを使う書き方でしていますが他にあるならそれでも構いません。!
追記
下の画像の「未回答」の名前を次のシーンのとあるボタンを使って変更したいです。
セグエのidentiferはclearedです。
該当のソースコード
DetailViewController↓
swift
1class DetailViewController: UIViewController { 2 3 var clearCheckNumber:Bool = false 4 var checkNumber = 0 5 6 var a = make() 7 var b = make() 8 9 var a2 = make() 10 var b2 = make() 11 12 var a3 = make() 13 var b3 = makeb() 14 15 var onlyoneAnswer:Bool = false 16 var onlyoneAnswer2:Bool = false 17 var onlyoneAnswer3:Bool = false 18 19 @IBOutlet weak var Label: UILabel? 20 @IBOutlet var getAnswer: UITextField! 21 @IBOutlet weak var button: UIButton! 22 23 @IBOutlet weak var Label2: UILabel! 24 @IBOutlet weak var getAnswer2: UITextField! 25 @IBOutlet weak var button2: UIButton! 26 27 @IBOutlet weak var Label3: UILabel! 28 @IBOutlet weak var getAnswer3: UITextField! 29 @IBOutlet weak var button3: UIButton! 30 31 @IBOutlet weak var button4: UIButton! 32 33 34 func configureView() { 35 36 // Update the user interface for the detail item. 37 let label = Label 38 label?.text = "① (a)+(b)=" 39 40 let label2 = Label2 41 label2?.text = "② (a2)-((b2))=" 42 43 let label3 = Label3 44 label3?.text = "③ (a3)×((b3))=" 45 46 } 47 48 49 @IBAction func checkAnswerInPlus (_ sender: UIButton) { 50 51 let answer:Int? = Int(getAnswer.text!) 52 let c = a + b 53 54 if answer==c&&onlyoneAnswer==false { 55 56 button.setTitle("正解!!", for: .normal) 57 button.setTitleColor(UIColor.purple, for: .normal) 58 checkNumber=checkNumber+1 59 onlyoneAnswer=true 60 61 }else if answer==nil{ 62 63 }else if answer==c&&onlyoneAnswer==true{ 64 65 }else{ 66 67 button.setTitle("不正解、解き直そう!!", for: .normal) 68 button.setTitleColor(UIColor.blue, for: .normal) 69 70 } 71 72 } 73 74 @IBAction func checkAnswerInMinus(_ sender: UIButton) { 75 76 let answer2:Int? = Int(getAnswer2.text!) 77 let c2 = a2 - b2 78 79 if answer2==c2&&onlyoneAnswer2==false { 80 81 button2.setTitle("正解!!", for: .normal) 82 button2.setTitleColor(UIColor.purple, for: .normal) 83 checkNumber = checkNumber+1 84 onlyoneAnswer2 = true 85 86 }else if answer2==nil{ 87 88 }else if answer2==c2&&onlyoneAnswer2==true{ 89 90 }else{ 91 92 button2.setTitle("不正解、解き直そう!!", for: .normal) 93 button2.setTitleColor(UIColor.blue, for: .normal) 94 95 } 96 97 } 98 99 100 101 @IBAction func checkAnswerInTimes(_ sender: UIButton) { 102 103 let answer3:Int? = Int(getAnswer3.text!) 104 let c3 = a3 * b3 105 106 if answer3==c3&&onlyoneAnswer3==false { 107 108 button3.setTitle("正解!!", for: .normal) 109 button3.setTitleColor(UIColor.purple, for: .normal) 110 checkNumber=checkNumber+1 111 onlyoneAnswer3=true 112 113 }else if answer3==nil{ 114 115 }else if answer3==c3&&onlyoneAnswer3==true{ 116 117 }else{ 118 119 button3.setTitle("不正解、解き直そう!!", for: .normal) 120 button3.setTitleColor(UIColor.blue, for: .normal) 121 122 } 123 124 } 125 126 127 128 @IBAction func clearcheck(_ sender: UIButton) { 129 if checkNumber>=3 { 130 button4.setTitle("CLEAR", for: .normal) 131 button4.setTitleColor(UIColor.black, for: .normal) 132 //ここにboolを送る内容を書き込みたいです。 133 clearCheckNumber=true 134 } 135 } 136 137 138 139 override func viewDidLoad() { 140 super.viewDidLoad() 141 142 button.setTitle("未回答", for: .normal) 143 button.setTitleColor(UIColor.blue, for: .normal) 144 145 button2.setTitle("未回答", for: .normal) 146 button2.setTitleColor(UIColor.blue, for: .normal) 147 148 button3.setTitle("未回答", for: .normal) 149 button3.setTitleColor(UIColor.blue, for: .normal) 150 151 button4.setTitle("未クリア", for: .normal) 152 button4.setTitleColor(UIColor.blue, for: .normal) 153 // Do any additional setup after loading the view. 154 configureView() 155 } 156 157 var detailItem: Event? { 158 didSet { 159 // Update the view. 160 configureView() 161 } 162 } 163 164 165}
TableView?の書き換えたい部分
swift
1 2func configureCell(_ cell: UITableViewCell, withEvent event: Event) { 3 4 cell.textLabel!.text = "未回答" 5 6 //event.timestamp!.description 7 } 8
MasterViewControllerに値を渡したいということでしょうか?
どこのコントローラーに値を送りつけるのかもわかっていないので追記の内容を見て判断していただけるとありがたいです。
回答2件
あなたの回答
tips
プレビュー