UITableViewCell如何自行更改textLabel文本?

时间:2016-08-30 12:18:18

标签: ios swift uitableview

UITableViewCell有一个坐标属性var coordinate: CLLocationCoordinate2D

单元格包含一个异步函数,用于将坐标反向地理编码为城市名称。在函数闭包中,单元格应使用城市名称更新其textLabel.text属性。

这似乎不起作用。 有效的方法是在包含tableView并调用tableView.reloadData()的视图控制器中进行地理编码。

是否可以在单元格内执行此操作而无需重新加载表格数据? (当然,表视图数据源无论如何都会更新。)

1 个答案:

答案 0 :(得分:2)

单元格可以像任何其他视图一样更新其内容。无需重新加载数据。但是,让单元执行此任务的问题是单元被重用。没有保证异步请求的顺序。

相反,使用另一个对象来管理异步请求和数据。此对象可以与UITableView一起使用,以根据需要更新单元数据。 UIViewController可以执行此任务。

如果您无法在请求后让单元格自行更新,那么听起来您有错误。