iOS Swift和reloadRowsAtIndexPaths编译错误

时间:2014-12-08 11:37:53

标签: ios uitableview swift reload

我用xCode / Swift打了一个死锁并刷新了一行UITableView。

此行有效....

self.tableView.reloadData();

而这一行不是

self.tableView.reloadRowsAtIndexPaths([_currentIndexPath], withRowAnimation: UITableViewRowAnimation.None);

自动完成建议 reloadRowsAtIndexPaths 并提供语法,但在编译时,我收到错误:

  

'无法找到成员'reloadRowsAtIndexPaths'。

如果我右键点击jump to definition中的“self.tableview”,则找不到该符号。

我希望我在这里做任何令人尴尬的愚蠢行为,并希望得到帮助。我可以使用reloadData,但想知道为什么这不起作用。

1 个答案:

答案 0 :(得分:9)

我相信,_currentIndexPath是可选的。

之类的东西
var _currentIndexPath:NSIndexPath?

所以试试:

if let indexPath = _currentIndexPath {
    self.tableView.reloadRowsAtIndexPaths([indexPath], withRowAnimation: UITableViewRowAnimation.None)
}
else {
    // `_currentIndexPath` is nil.
    // Error handling if needed.
}