UiWebView 上的 Meme 类型错误
Posted
技术标签:
【中文标题】UiWebView 上的 Meme 类型错误【英文标题】:Meme Type Error on UiWebView 【发布时间】:2016-11-28 13:27:57 【问题描述】:我有一个 ios 应用程序,它有一个 uiwebview,它可以在其中打开一个网站,但是在 webview 中单击的任何链接都会在 Safari 中打开。在我下面的代码中,它在“webView.load(request)”行上出现了 memetype 错误。你能给我一些代码以便我解决这个问题吗?谢谢! (我需要使用 UIWebView 而不是 WKWebView)
class VideosViewController : UIViewController, UIWebViewDelegate
@IBOutlet weak var webView : UIWebView!
override func viewDidLoad()
super.viewDidLoad()
guard let url = URL(string: "http://example.com") else return
let request = URLRequest(url: url)
webView.load(request)
func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool
if navigationType == .linkClicked
guard let url = request.url else return true
UIApplication.shared.open(url, options: [:], completionHandler: nil)
return false
return true
【问题讨论】:
哪里出错了? 对不起,忘了说(lol)就行了“webView.load(request)” 【参考方案1】:尝试致电webView.loadRequest(request)
。这个函数只有一个URLRequest
参数。
【讨论】:
它消除了错误,但单击的链接在 web 视图中打开,而不是在 Safari 应用程序中打开。你能帮我解决这个问题,还是你在代码中看到任何错误?? 如果你想打开链接是Safari,你不需要UIWebView
。只需在需要的函数中调用UIApplication.shared.open(url, options: [:], completionHandler: nil)
我希望在 uiwebview 中加载一个网站,但我希望在 Safari 应用程序中打开在 webview 内单击的任何链接。
我明白了。检查webView:shouldStartLoadWithRequest:navigationType:
。每次点击UIWebView
中的链接时它都会调用
对不起。我是编码新手,还在学习。我不知道那是什么意思。 :)以上是关于UiWebView 上的 Meme 类型错误的主要内容,如果未能解决你的问题,请参考以下文章
_UIFallbackPresentationViewController