UIWebView 不显示(Swift)

Posted

技术标签:

【中文标题】UIWebView 不显示(Swift)【英文标题】:UIWebView is not displaying (Swift) 【发布时间】:2014-11-20 17:18:10 【问题描述】:

我只是想在视图控制器中创建一个简单的 webview。

这是我的代码:

import UIKit

class test:UIViewController
@IBOutlet weak var myWebView: UIWebView!

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

    var myString = "http://www.google.com"
    let myURL = NSURL(string: myString)
    let myReq = NSURLRequest(URL: myURL)
    myWebView.loadRequest(myReq)

    println(myWebView.loading)


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

我没有收到任何错误,只是一个白屏。加载检查返回 false。看起来它应该是插座连接,但我确信我已经建立了正确的连接。我将蓝色 UIWebView 元素从情节提要中按住 ctrl 拖到类中作为 UIWebView!对象并将其命名为 myWebView。圆圈在 swift 文件上填充表示连接,它们在故事板上的连接中匹配。

这段代码最初对我来说很好用,但现在不行了。我尝试创建一个全新的项目,但它仍然无法正常工作。将 UIWebViewDelegate 协议添加到类中不起作用我查看了以下链接上的解决方案,但它们不适用:

link1

link2

我没有想法。有人收到了吗?

谢谢!

【问题讨论】:

【参考方案1】:

这就是你在 viewDidLoad 中想要的

override func viewDidLoad() 
super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.
    var myWeb = UIWebView(frame: CGRect(x: 40, y: 100, width: 240, height: 128))

    var myString = "http://www.google.com"
    let myURL = NSURL(string: myString)
    let myReq = NSURLRequest(URL: myURL!)
    myWeb.loadRequest(myReq)
    view.addSubview(myWeb)

    println(myWeb.loading)

请注意,您有另一个来自故事板的 Web 视图(称为 myWebView),作为一个出口,它没有被使用。通过编写上述代码,您可以通过编程方式创建一个新的 Web 视图(称为 myWeb)。

【讨论】:

哦,抱歉,我实际上是想把那部分注释掉,因为我也尝试过。这两种方法我都试过了,但似乎都不起作用。 如果你复制粘贴上面的代码,你会在屏幕上看到一个 UIWebView :)

以上是关于UIWebView 不显示(Swift)的主要内容,如果未能解决你的问题,请参考以下文章

如何在 UIWebView 上显示覆盖而不阻止用户与 UIWebView 的交互

UIWebView 不显示(Swift)

ITMS-90809:不推荐使用的 API 使用 (UIWeb) - Xcode

如何控制 UIWebView 上的触摸? (苹果手机)

如何在不使用 UIWebView 的情况下在 iOS 10 中显示带有 HTML 标签的文本(使用 swift)

摆脱 iOs UIWebView 中的链接单击“flash”指示器