私の配列は、tableview
です。テーブルには文字列の配列が表示されます。配列内の80以上の文字列。uiTableViewで選択した文字列をArrayからuILabelに新しいViewControllerで渡します
今、私は行を選択し、明らかにその行の文字列をViewController
のuiLabel
に渡したいと思います。
placeTypes
は私の宣言された配列で、このコードには載っていません。ちょうど84文字列の配列を想像してください!私のsegueIdentifier
はA < - easy peasyです。 passedString
はuiLabel
です。これは、...渡された文字列データを受け取ります。
テーブルビューコード
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return placeTypes.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
cell.textLabel?.text = placeTypes[indexPath.row]
return cell
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
NSLog("You selected cell number: \(indexPath.row)!")
performSegue(withIdentifier: "A", sender: self)
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "A" {
// let viewController = segue.destination as? ViewController
// SOMEHOW PASS THE SELECTED STRING IN THE SELECTED ROW TO THE VIEW CONTROLLER
}
}
オーケー、今私のViewController
コード
@IBOutlet weak var passedString: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
}
編集:私はまだエラーを取得しています。更新されたsegueの準備では、placeType [indexPath.row]の未解決の識別子を使用し、viewControllerはsendString変数がないことを伝えています。
興味深いです。私はエラーが発生しています。 segueを実行する際にindexPathに未解決の識別子を使用する。 –
回答が更新されました。 – ryantxr