我需要将id存储在cell
以及文本中(以显示在listview中)。那么如何在单元格中保存2个值?
这就是我所拥有的
override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("sentence", forIndexPath: indexPath) as! UITableViewCell
//Get list
var request = NSURLRequest(URL: url!)
var data = NSURLConnection.sendSynchronousRequest(request, returningResponse: nil, error: nil)
if data != nil {
var dataArray = JSON(data: data!)
var item: NSMutableArray = []
//Get IDs
for (key, data) in dataArray {
var name = data["dutch_sentence"]
println(name)
item.addObject(name.string!)
}
cell.textLabel!.text = item[indexPath.row] as? String
return cell
}
else{
println("Out")
return cell;
}
}
但我也想发送id,因为我想在下一个视图中将它用于JSON数组URL。所以我需要这样的东西:
cell.id = 2
能够在didSelectRowAtIndexPath
中调用它
我怎么能这样做?
答案 0 :(得分:4)
在您的视图中存储数据是非常糟糕的设计决策。您应该将数据保存在数组中,然后根据indexPath.row
let ids = [5, 10, 20]
public func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let id = ids[indexPath.row]
}