Web视图不显示Swift 2.0中的内容

时间:2016-04-09 00:07:17

标签: ios xcode swift webview

我正在按照教程在我的应用程序中显示Web视图中的内容。在swift 2.0中,当我运行模拟器时,我在模拟器屏幕上没有响应。

我的代码:

import UIKit

class ViewController: UIViewController {

@IBOutlet var webView: UIWebView!

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    let url = NSURL(string: "http://www.stackoverflow.com")

    let task = NSURLSession.sharedSession().dataTaskWithURL(url!) {
        (data, response, error) in

        if error == nil {

            var urlContent = NSString(data: data!, encoding: NSUTF8StringEncoding)

            print(urlContent)

            dispatch_async(dispatch_get_main_queue()) {

                self.webView.loadHTMLString(urlContent! as String, baseURL: nil)

            }

        }


    }

    task.resume()


   }

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}


}

enter image description here

1 个答案:

答案 0 :(得分:-1)

我很确定您应该尝试保留数据任务。

只需声明存储的属性:

var task: NSURLSessionDataTask?

override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.

let url = NSURL(string: "http://www.stackoverflow.com")

task = NSURLSession.sharedSession().dataTaskWithURL(url!) {
    (data, response, error) in

    if error == nil {

        var urlContent = NSString(data: data!, encoding: NSUTF8StringEncoding)

        print(urlContent)

        dispatch_async(dispatch_get_main_queue()) {

            self.webView.loadHTMLString(urlContent! as String, baseURL: nil)
            self.task = nil

        }

    }


}

task.resume()