gpt4 book ai didi

ios - 我无法加载动画,并且在加载请求后无法将其删除

转载 作者:行者123 更新时间:2023-11-29 05:29:57 31 4
gpt4 key购买 nike

我在应用程序的 native 部分做了一些事情。然后,当我从服务器获取 sessionID 时,我将其设置为 WKWebView。然后,我将网页加载到 webview 本身。问题是,我使用了名为“didfinish”的函数来播放 gif。该函数有效,每次都会调用它,但是当我试图停止 gif 时,它对我的​​ ImageView 显示为零。

我将 ImageView 放在 View 之上,该 View 覆盖了WKWebview,用户在完全加载之前不会看到空白 View 。

override func viewDidLoad() {
super.viewDidLoad()
...some code...
imageViewForAnimation.loadGif(named:"gif")
loadWeb()
}
func loadWeb(){
setCookie()
view=self.webview
webview?.load(URLRequest(url: URL(string: lastURL)!))
self.webview.navigationDelegate=self
}
func setCookie(){
print("session id is:\(session_id)")
let cookie = HTTPCookie(properties: [
.domain: "mywebpage.com",
.path: "/",
.name: "sessionID",
.value: "\(session_id)",
.secure: "TRUE",
.expires: NSDate(timeIntervalSinceNow: 31556926)
])!
let websitedataStorage=WKWebsiteDataStore.nonPersistent()
websitedataStorage.httpCookieStore.setCookie(cookie) {
}
let configuration=WKWebViewConfiguration()
configuration.websiteDataStore=websitedataStorage
webview=WKWebView(frame: self.view.frame, configuration: configuration)
}

一切正常,无需任何 gif 或任何其他内容。我想要的是,如果页面准备好了

func webView(_ webView: WKWebView,
didFinish navigation: WKNavigation!) {
self.imageViewForAnimation.image=nil //for stopping animating
self.coverViewOnTopOfWebView.alpha=0 //show web now

}

我得到的错误是

Thread 1: Fatal error: Unexpectedly found nil while implicitly unwrapping an Optional value

在 didFinish 函数中。为了播放 gif,我使用了这个类

https://github.com/swiftgif/SwiftGif/blob/master/SwiftGifCommon/UIImage%2BGif.swift

感谢各位提前提供的帮助和建议。

最佳答案

您在 loadWeb() 方法的以下代码中犯了错误。

view=self.webview

上面的代码会将 view 中放置的所有其他控件设置为 nil。您不应将 self.webView 分配给 view,而是应该从 Storyboard 添加它,或者以编程方式在 View 中添加它,如下所示:

self.view.insertSubview(self.webview, at: 0)

或者

self.view.addSubview(self.webview)

您更喜欢哪一个。

关于ios - 我无法加载动画,并且在加载请求后无法将其删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57707166/

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