如何为uitableview创建所有行和所有部分的索引路径?

Ale*_*xey 8 xcode uitableview nsindexpath ios

我有一个有n个部分的桌子.每个部分包含一行.如何为表创建索引路径?有一种方法允许为[self.tableView indexPathsForVisibleRows]我需要类似的所有可见行创建索引路径indexPathsForAllRows

我需要所有这些只更新表中的数据,因为方法[self.tableView reloadData];使用页眉和页脚更新所有表.这就是我必须使用的原因reloadRowsAtIndexPaths

Dav*_*ist 10

您不需要重新加载所有行.您只需要重新加载可见单元格(这就是为什么indexPathsForVisibleRows存在).

屏幕外的单元格cellForRowAtIndexPath:一旦可见就会获得新数据.


Vak*_*kas 5

这是Swift 3中的解决方案

func getAllIndexPaths() -> [IndexPath] {
    var indexPaths: [IndexPath] = []

    // Assuming that tableView is your self.tableView defined somewhere
    for i in 0..<tableView.numberOfSections {
        for j in 0..<tableView.numberOfRows(inSection: i) {
            indexPaths.append(IndexPath(row: j, section: i))
        }
    }
    return indexPaths
}
Run Code Online (Sandbox Code Playgroud)