什么取代了Swift 3中的indexPathForSelectedRow?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么取代了Swift 3中的indexPathForSelectedRow?相关的知识,希望对你有一定的参考价值。
在Swift 3之前的项目中 - 如果我想从tableController中删除一个indexPath,我会有一行代码像
let indexPath = self.tableView.indexPathForSelectedRow!
但是,在Swift 3中,我无法写出这个。我似乎无法找到Apple网站上的任何文档或其他SO问题,以找到可行的代码。
为了回应Frankie的评论,我回到了我的代码(这里是所有当前的segue Swift 3代码),并尝试复制并粘贴上面的代码片段......但无济于事。如果输入“self.tableView”,Xcode不会自动完成。它无法识别indexPathForSelectedRow!无论是。我错过了什么。
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
if segue.identifier == "dineSegue"
{
if let destinationViewController = segue.destination as? RestaurantController
{
let indexPath = DineController.indexPathForSelectedRow!
destinationViewController.restaurantIndex = index
}
}
}
答案
我用Google搜索了'indexPathForSelectedRow Apple文档`,并且能够为您找到属性参考,因为它是第一个结果。
https://developer.apple.com/reference/uikit/uitableview/1615000-indexpathforselectedrow
话虽这么说,这正是你在Swift 3中发布的内容。
self.tableView.indexPathForSelectedRow
另一答案
你确定“DineController”引用是实际的UITableView
当我遇到这个问题时,我的初始引用是泛型类,而不是我编码的实际表。
以上是关于什么取代了Swift 3中的indexPathForSelectedRow?的主要内容,如果未能解决你的问题,请参考以下文章