gpt4 book ai didi

swift - NSIndexPath 永远不能为 nil,不允许比较

转载 作者:行者123 更新时间:2023-11-28 10:19:06 26 4
gpt4 key购买 nike

我试图查看用户是否按下了表格 View 中的单元格,但我无法将其与 nil 进行比较?我如何检查单元格是否未被按下?这是当用户长按表格 View 时的处理程序

func handleLongPress(gestureRecognizer: UILongPressGestureRecognizer) {
let p: CGPoint = gestureRecognizer.locationInView(self.tableView)
let indexPath: NSIndexPath = self.tableView.indexPathForRowAtPoint(p)!
if indexPath == nil{

}
else if gestureRecognizer.state == .Began {
print(indexPath.row)
}

}

最佳答案

您不应该强制解包然后检查 nil - 这会使您的应用程序崩溃。你应该做的是:放下解包然后比较!

func handleLongPress(gestureRecognizer: UILongPressGestureRecognizer) {
let point = gestureRecognizer.locationInView(self.tableView)
let indexPath = self.tableView.indexPathForRowAtPoint(point)
if let touchedPath = indexPath {
if gestureRecognizer.state == .Began {
print(touchedPath.row)
}
}
}

关于swift - NSIndexPath 永远不能为 nil,不允许比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37239664/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com