修复了为tableView函数获取“已弃用且将在Swift 4中删除”警告的问题

时间:2017-11-27 06:19:16

标签: ios uitableview tableview deprecated swift4

我刚刚将代码升级到Swift 4,现在在控制台上接收所有tableView函数的警告。

tableView:willDisplayCell:forRowAtIndexPath:] is deprecated and will be removed in Swift 4; add explicit '@objc' to the declaration to emit the Objective-C entrypoint in Swift 4 and suppress this message

tableView:cellForRowAtIndexPath:] is deprecated and will be removed in Swift 4

2 个答案:

答案 0 :(得分:0)

使用以下代码cellForRow

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

使用下面一个标识正在显示的单元格

func tableView(_ tableView: UITableView, willDisplay cell: UITableViewCell, forRowAt indexPath: IndexPath) {
}

如果您对数据源和委托函数有疑问,请选择UITableViewDataSource或UITableViewDelegate,然后右键单击跳转到将导致获取功能的定义

希望这会对你有所帮助

答案 1 :(得分:-2)

修复此警告您应该在每个使用的tableView函数的开头添加“@objc”。

像这样:

@objc func tableView(_ tableView: UITableView!, numberOfRowsInSection section: Int) -> Int {
    return 1
}