IndexPath.row 不是静态单元格独有的
IndexPath.row is not unique for Static Cells
我有一个带有静态单元格和部分 headers 的 TableViewController。我尝试调用 indexPath.row
但是,它们不是唯一的。例如
TableView:
- Header 1
- Cell1 indexPath = 0
- Header 2
- Cell2 indexPath = 0
- Cell3 indexPath = 1
- Cell4 indexPath = 2
获取行的唯一标识符的正确方法是什么?
因为使用这个使得 2 个单元格具有相同的 indexPath
override func tableView(tableView: UITableView, willSelectRowAtIndexPath indexPath: NSIndexPath) -> NSIndexPath? {
print(indexPath.row)
if indexPath.row != 0 {
return indexPath
}
return nil
}
您似乎忽略了 indexPath.section
。部分和行的组合唯一地定义了索引路径。一行在其部分内是唯一的。
NSIndexPath
由row
和section
组成,section
和row
的组合是唯一的
你的 Cell1 有 indexPath.section == 0
和 indexPath.row == 0
Cell2 有 indexPath.section == 1
和 indexPath.row == 0
我有一个带有静态单元格和部分 headers 的 TableViewController。我尝试调用 indexPath.row
但是,它们不是唯一的。例如
TableView:
- Header 1
- Cell1 indexPath = 0
- Header 2
- Cell2 indexPath = 0
- Cell3 indexPath = 1
- Cell4 indexPath = 2
获取行的唯一标识符的正确方法是什么?
因为使用这个使得 2 个单元格具有相同的 indexPath
override func tableView(tableView: UITableView, willSelectRowAtIndexPath indexPath: NSIndexPath) -> NSIndexPath? {
print(indexPath.row)
if indexPath.row != 0 {
return indexPath
}
return nil
}
您似乎忽略了 indexPath.section
。部分和行的组合唯一地定义了索引路径。一行在其部分内是唯一的。
NSIndexPath
由row
和section
组成,section
和row
的组合是唯一的
你的 Cell1 有 indexPath.section == 0
和 indexPath.row == 0
Cell2 有 indexPath.section == 1
和 indexPath.row == 0