Web 视图:在 loadRequest 中返回 nil 而在 URLRequest 中为 true
Posted
技术标签:
【中文标题】Web 视图:在 loadRequest 中返回 nil 而在 URLRequest 中为 true【英文标题】:Web view: Returning nil at loadRequest while true in URLRequest 【发布时间】:2017-04-28 01:49:02 【问题描述】:我不知道哪里错了。
导入 UIKit
class DetailViewController: UIViewController, UIWebViewDelegate
@IBOutlet weak var designatedWebView: UIWebView!
var webview: UIWebView!
var testString: String!
override func viewDidLoad()
super.viewDidLoad()
designatedWebView = webview
testString = "http://www.apple.com"
let baseURL = URL(string: testString)
let baseURLRequest = URLRequest(url: baseURL!) //this prints true
designatedWebView.loadRequest(baseURLRequest) //while this prints nil
【问题讨论】:
你想用designatedWebView = webview
声明做什么?
"this prints nil"是什么意思,func loadRequest(_ request: URLRequest)没有返回值
您是否打算拥有两个独立的 UIWebView? designatedWebView
来自情节提要吗?
@R P 试图连接到另一个视图控制器。不过,我暂时与此断开了联系。哦............我删除了它们并修复了它。大声笑谢谢
@OliverM 是的:典型的“致命零”
【参考方案1】:
用这个替换你的代码。这是在 UIWebView 中加载网站的正常且最简单的方法。
import UIKit
class ViewController: UIViewController, UIWebViewDelegate
@IBOutlet var webView: UIWebView!
override func viewDidLoad()
super.viewDidLoad()
// Do any additional setup after loading the view.
let url = URL(string: "http://www.apple.com")
let request = URLRequest(url: url!)
webView.loadRequest(request)
webView.scalesPageToFit = true
如果你没有从你的 Main.storyboard 连接 webView,那么在你的 viewDidLoad() 函数中添加这行代码和上面的代码。
webView.delegate = self
【讨论】:
以上是关于Web 视图:在 loadRequest 中返回 nil 而在 URLRequest 中为 true的主要内容,如果未能解决你的问题,请参考以下文章
AdMob 错误 - 必须在调用 loadRequest 之前设置 GADBannerView 的 rootViewController 属性:
General-Block 56, 1024, 8, 244, 24 Memory Leaks using UIWebView loadRequest
UIWebView loadRequest 重用给出闪烁效果