gpt4 book ai didi

swift - WKNavigationDelegate 仅在设置为 self 时有效

转载 作者:搜寻专家 更新时间:2023-10-30 22:09:04 27 4
gpt4 key购买 nike

我正在编写一个 Swift 混合应用程序,我需要能够知道我的 WKWebView 何时完成请求加载。我正在尝试使用 WKNavigationDelegate 来实现这一点。但是,我可以让事件触发的唯一方法是如果我这样设置它:

webView.navigationDelegate = self

问题是我有一些我想要与我的请求相关联的数据,所以我创建了一个实现 WKNavigationDelegate 的自定义类,如下所示:

class MyNavigationDelegate : NSObject, WKNavigationDelegate {
init(...) {
//set local variables with passed args
}

func webView(webView: WKWebView, didFinishNavigation navigation: WKNavigation!) {
println("finished loading")
}
}

然后我这样分配它:

webView.navigationDelegate = MyNavigationDelegate(my, arguments, here)
webView.loadRequest(...)

页面正在加载,所以我加载它的方式没有问题。我错过了什么?

最佳答案

委托(delegate)是一个弱属性,因此请确保您在别处持有委托(delegate)类实例——它很可能在使用之前就被释放了。同时,self 没有被释放,所以它在工作。

关于swift - WKNavigationDelegate 仅在设置为 self 时有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28722306/

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