![](/img/trans.png)
[英]iOS how can I add a completion block to UIWebView loadRequest:?
[英]How do I add closure to loadRequest?
我的目標是在webView仍從服務器獲取數據時執行活動指示器
但我似乎找不到辦法。 我能想到的唯一方法是關閉,但該怎么做呢?
如果我不添加任何活動指示器,則它將只是空白屏幕,然后經過一段時間后將顯示網頁。 這不是良好的用戶體驗。
這是代碼
import UIKit
class SignupWebViewController: UIViewController {
@IBOutlet var signupWebView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: "http://www.example.com/merchants/signup")
// How Do i do a closure here?
signupWebView.loadRequest(URLRequest(url: url!))
}
}
您必須實現UIWebViewDelegate
方法。 在加載請求之前,請執行以下操作:
signupWebView.delegate = self;
並且不要忘記將其添加到您的ViewController
class SignupWebViewController: UIViewController, UIWebViewDelegate {
然后將您的邏輯添加到此方法:
optional public func webViewDidStartLoad(_ webView: UIWebView) {
// show your activity indicator
}
optional public func webViewDidFinishLoad(_ webView: UIWebView) {
// hide your activity indicator
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.