前提・実現したいこと
私はUIButtonを使って、画像から位置と色を取得し、そして別のボタンを押すと自動に値を持って次の画面へ行くようにしたいと思っています。しかし値の受け渡しができない。
実際に位置はデバックエリアで表示できています。
swift12.2で
main.viewcontroller.swift
main.storyboard
next.viewcontroller.swift
next.storyboard
の四つで操作している。
発生している問題・エラーメッセージ
位置と色の取得コード:
@objc public func xxx(_ sender: UIButton, event: UIEvent) {
let location : CGPoint = (event.touches(for: sender)?.first?.location(in: view))!
print(location)
let r2l = rgb_to_lab(red: r, green: g, blue: b)
print("lab色:", r2l as Any)
}
画面遷移のコード
@IBAction func Next(_ sender: UIButton) {
let storyboard: UIStoryboard = UIStoryboard(name: "Next", bundle: nil)
if let nt = storyboard.instantiateInitialViewController(), let nextNt = nt as? NextViewController {
nextNt.value = ?????
self.present(Nt, animated: true, completion: nil)
}
}
しかし,いくら試しても?????にr2lを入れることができません。
どうしたらいいでしょうか?
試したこと
二つのstoryboardに分けず、やっても移動できない。位置と色取得コードを@objc public func xxx(_ sender: UIButton, event: UIEvent) {}の外に出すと、どこを押したのかがわからなくなるから、ダメでした。
デバックエリアに表示できたのに、どうしてダメなのでしょう?どなたが位置と色の値が画面遷移できる方法を教えて下さい。おねがいします。