我刚刚将代码升级到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
答案 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
}