ios - 为什么我的指标 View 没有显示?

标签 ios swift

将 swift3 与 xcode8 结合使用

下面是我的 viewconroller.swift

class ViewController: UIViewController {
    @IBOutlet weak var YahooWebview: UIWebView!
    @IBOutlet weak var activity: UIActivityIndicatorView!


     override func viewDidLoad() {
        super.viewDidLoad()
        let YURL = URL(string: "http://www.yahoo.com")
        let YURLRequest = URLRequest(url: YURL!)
        YahooWebview.loadRequest(YURLRequest)
    }
}

func webViewDidStartLoad(YahooWebview: UIWebView) {
    activity.startAnimating()
}

func webViewDidFinishLoad(YahooWebview: UIWebView) {
    print("show indicator")
    activity.stopAnimating()
}

为什么当 webview 加载时我的指示器没有显示? 我什至无法从 Xcode 的日志中看到字符串“show Indicator”。

最佳答案

您需要将您的类设置为 UIWebView 的委托(delegate)

YahooWebview.delegate = self

查看我的answer获取有关委托(delegate)和委托(delegate)模式的详细信息。

Apple 开发者注意事项:在 iOS 8 及更高版本中运行的应用中,请使用 WKWebView 类而不是使用 UIWebView。此外,如果您渲染不应该运行 JavaScript 的文件,请考虑将 WKPreferences 属性 javaScriptEnabled 设置为 false。

关于ios - 为什么我的指标 View 没有显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45003475/

相关文章:

ios - 无法使用类型为 'decode' 的参数列表调用 '(T, from: Data)'

iphone - ZipKit 和 Xcode 4

ios - 将应用程序背景设置为主屏幕/跳板背景

ios - 蓝牙 LE,后台扫描外围设备服务,提高速度

xcode - 在 Xcode 中使用 swift 更改子类中父类(super class)中的变量

ios - swift : Cast wrapped value

ios - 当我运行我的应用程序 IOS 时音乐停止播放

ios - 使用 swift 在 ios7 上替代 QOS_CLASS_UTILITY

ios - 如何从 AppDelegate 访问 ViewController 变量

Swift:在自动对焦时创建的搜索栏