gpt4 book ai didi

cocoa-touch - 无法调用 UITableViewDelegate tableView(tableView, didSelectRowAtIndexPath : indexPath) from UITableView subclass

转载 作者:行者123 更新时间:2023-11-30 10:19:51 25 4
gpt4 key购买 nike

我有一个 UITableView 的子类,它执行一些自定义触摸处理。我正在将它从 Objective-C 移植到 Swift。

出于某种原因,我无法在不出现以下错误的情况下调用 didSelectRowAtIndexPath 委托(delegate)方法,尽管它很乐意为我自动完成它:

找不到接受所提供参数的“tableView”重载

此示例代码引发上述错误:

let tableView = UITableView(frame: CGRectZero, style: UITableViewStyle.Plain)
let indexPath = NSIndexPath(index: 1)
self.delegate?.tableView(tableView, didSelectRowAtIndexPath: indexPath)?

这是编译器/框架错误,还是我在这里做错了什么?

最佳答案

tableView:didSelectRowAtIndexPath:方法是可选的,因此您必须考虑到这一点。您可以使用可选链接:

self.delegate?.tableView?(tableView, didSelectRowAtIndexPath: indexPath)

或者如果您想强制调用它(如果尚未实现,则存在程序崩溃的风险:

self.delegate?.tableView!(tableView, didSelectRowAtIndexPath: indexPath)

关于cocoa-touch - 无法调用 UITableViewDelegate tableView(tableView, didSelectRowAtIndexPath : indexPath) from UITableView subclass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27586573/

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