如何从tableView:cellForRowAtIndexPath中获取索引号:使用`indexPath`参数?

时间:2014-11-27 07:53:41

标签: ios uitableview swift nsindexpath

我想更改backgroundColor的{​​{1}},因此想获取每个表格视图单元格的索引号,因为我还想根据索引更改这些单元格的颜色号。

但是如何从UITableViewCell中获取索引号?例如,在以下代码中(tableView: cellForRowAtIndexPath:内):

tableView: cellForRowAtIndexPath:

我想根据索引号更改每个单元格的let numberOfCell = indexPath.length // always returns 2, even if I add more cells println(indexPath) // returns <NSIndexPath: 0xc000000000000016> {length = 2, path = 0 - 0} for i in 0..<numberOfCell { let alpha = CGFloat(1.0 - Double(i) / 10.0) cell.backgroundColor = UIColor(red: 227/256, green: 245/256, blue: 61/256, alpha: alpha) } return cell 值,但上面的代码会将所有单元格alpha改为alpha,因为1.0始终为numberOfCell,即使我的表格视图有四个对象。我不确定为什么它总是返回2。我添加了更多的细胞,但结果并没有改变。

那么为什么它会返回2,我怎样才能获得每个索引的正确值?我想得到的是第一个单元格2,第二个单元格0,第三个单元格1,然后继续。

我还尝试访问索引路径的2属性,如上面path的输出所示,但由于某些原因println(indexPath)没有此类属性。 ..

1 个答案:

答案 0 :(得分:4)

尝试indexPath.row,或者,如果您也使用了部分,请另外尝试indexPath.section。 :)