是否有一个回调方法,告诉UITableViewController何时完成创建UITableView的单元格?

时间:2017-01-16 22:10:34

标签: ios swift uitableview loading

是否有iOS / Swift 3.0回调方法,告诉 UITableViewController 何时完成加载(创建单元格) UITableView (在调用.reloadData之后)表视图(在Swift中)?

(或替代方法)

1 个答案:

答案 0 :(得分:1)

您正在寻找的func不存在,但根据您上面的评论,是否可以获取每个单元格(或作为属性的某个模型对象)来进行API预加载调用?这样,数据将仅为可见单元预加载。当新单元格滚动到视图中时,它们的数据将依次加载。

例如,在您的单元格中:

index-1

并在您的视图控制器中:

class MyCell: UITableViewCell {

    var someObject: MyObject {
        didSet {
            someObject?.loadData()
        }
    }
}

这样,您只需为视图中的单元格加载数据。如果您要添加:

func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {

    let cell = tableView.dequeueReusableCell(withIdentifier: "MyCell", for: indexPath) as! "MyCell"
    cell.someObject = myObjects[indexPath.row]
    return cell
}

如果不需要,您可以确保不再加载单元格中不再查看的对象。