[英]Tableview passing same data on select
我有一個表格視圖,按對象ID顯示分析用戶列表。 我正在嘗試使用它,因此在點擊它時會將您推送到具有相應objectId的新視圖控制器。 我在單元格中可以很好地打印objectId,甚至可以將數據傳遞到新的視圖控制器,但是它只是傳遞從查詢中拉出的最后一個objectId。 如果有人可以幫助我弄清楚如何發送該行objectId會很有幫助。 這是我的代碼:
@IBOutlet weak var objectIdData: UILabel!
internal func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell:ChatTableCell = self.tableView.dequeueReusableCellWithIdentifier("ChatCell") as! ChatTableCell
let user = self.friends[indexPath.row]
self.objectIdData?.text = String(user.objectId!)
cell.cellTitle?.text = String(user.objectId).uppercaseString
return cell
}
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
self.tableView.deselectRowAtIndexPath(indexPath, animated: true)
let user = self.friends[indexPath.row]
let secondViewController = self.storyboard!.instantiateViewControllerWithIdentifier("DetailViewController") as! DetailViewController
secondViewController.lblDetail = objectIdData
self.navigationController!.pushViewController(secondViewController, animated: true)
}
因此,它將objectId傳遞給下一個視圖控制器上的lblDetail,但始終是相同的objectId,而不是與該用戶/行關聯的對象。 提前致謝。
在didSelectRowAtIndexPath
,您要在secondViewController
上設置UI元素(objectIdData isa UILabel)。
我相信您只想像在cellForRowAtIndexPath
一樣設置lblDetail
的文本。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.