你正在嘗試做比你更多。 Apple建立了UITableViewControllers,其中包含許多正在查找的功能。
首先在故事板中爲標籤添加一個標籤123.然後另一個具有與數組兼容的空數組的viewController來自tableViewController。
在每個viewController的身份檢查器中,確保您添加文件名並回車。
還通過查看main.storyboard中tableViewCell的屬性來設置reuseidentifier在字段標識符中輸入「cell」(no quotes)。
開始tableViewController1使用數據源的方法
override func numberOfSections(in tableView: UITableView) -> Int {
return 1
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return yourObjects.list.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)
let label = cell.viewWithTag(123) as? UILabel
label?.text = yourObjects.list[indexPath.row]
return cell
}
我強烈建議使用一個navigationController,如果你不打算使用塞格斯顯示您的陣列(我假設它預裝。你沒有提到其他) 。他們是「iOS體驗」的重要組成部分,並使您試圖完成的任務變得更加輕鬆。有很多方法可以做到這一點,但這是一個相當簡單的方法。 在您的委託方法
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let yourNextVC = storyboard?.instantiateViewController(withIdentifier: "nextVC") as! TheNextVC
navigationController?.pushViewController(yourNextVC, animated: true)
yourNextVC.arrayName = yourObjects.list[indexPath.row]
tableView.deselectRow(at: indexPath, animated: false)
}
這最後一種方法是在您的數組被從該表傳遞到下一個的viewController,您可以編輯或做你想要什麼都。
你正試圖重新發明車輪。有一個數據源。 TVC獲取數據(直接來自源代碼或通過爲表格設置數據的自定義類)並創建表格。在代碼中的其他地方,您可以更新數據源(也可以通過直接訪問數據源或通過管理類進行更新)。 – Shades