gpt4 book ai didi

ios - Zombie UIWebView 在从 javascript 调用 alert() 后立即解除分配

转载 作者:行者123 更新时间:2023-11-29 11:01:06 25 4
gpt4 key购买 nike

我使用的是 UIWebView,它会在单击按钮时弹出警报(来自 javascript)。还有另一个按钮(在 native 端),它关闭 Controller ,因此 deallocs 也 UIWebView。

问题是,如果我触摸 UIWebView 中的按钮,并在填充警报之前触摸关闭按钮,我的 Controller 和 UIWebView 将被释放,但警报仍保留在屏幕上。然后,如果我在警报上单击任何按钮,应用程序就会崩溃并给出以下错误:

[UIWebView modalView:didDismissWithButtonIndex:]: message sent to deallocated instance

这个方法是从私有(private)方法调用的

[UIModalView(Private) _popoutAnimationDidStop:finished:]

我正在使用 ARC,我的 dealloc 是这样的:

- (void)dealloc {
[_myWebView stopLoading];
_myWebView.delegate = nil;
_myWebView = nil;
}

但这并没有解决我的问题,因为我认为 UIModalView 有一个对我的 webview 的引用作为委托(delegate),我不能将它设置为 nil,因为它是私有(private)的。

我该如何解决?

问候

最佳答案

在解除分配 UIWebView 之前,找到一种方法将 UIAlertView 上的委托(delegate)设置为 nil。

关于ios - Zombie UIWebView 在从 javascript 调用 alert() 后立即解除分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15900137/

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