在单元格中存储第二个值

时间:2015-08-14 10:26:24

标签: ios swift

我需要将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中调用它 我怎么能这样做?

1 个答案:

答案 0 :(得分:4)

在您的视图中存储数据是非常糟糕的设计决策。您应该将数据保存在数组中,然后根据indexPath.row

访问它
let ids = [5, 10, 20]

public func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    let id = ids[indexPath.row]
}