У меня есть UITableView, который передает данные (изображение и метку) из ячейки в DetailViewController.Это прекрасно работает для всех 20 ячеек, которые у меня есть!
Но теперь я пытаюсь создать массив, который дает мне «Comm1Description» и «Comm1Description» (просто текст из «arr2») в моем DetailViewController.Comm1Description для Cell1, Comm2Description для Cell2 и т. Д.
Это мой код
import UIKit
class WCommanderController: UIViewController {
@IBOutlet weak var tbl: UITableView!
var arr = ["Commander1", "Commander2"]
var arr2 = ["Comm1Description", "Comm2Description"]
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.
}
}
extension WCommanderController: UITableViewDataSource, UITableViewDelegate {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return arr.count
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 130
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath) as? DataTableViewCell
cell?.img.image = UIImage(named: arr[indexPath.row])
cell?.lbl.text = arr[indexPath.row]
return cell!
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let vc = storyboard?.instantiateViewController(withIdentifier: "DetailViewController") as? DetailViewController
vc?.str = arr[indexPath.row]
navigationController?.pushViewController(vc!, animated: true)
}
}