Ozy*_*s42 7 macos xcode nsviewcontroller swift wkwebview
在此之前,由于重复而被击落,事实并非如此.几乎WKWebView上的每个问题都是关于iOS应用程序中的WKWebView,而不是macOS应用程序,区别仅在于实现的UIViewController接口而不是macOS中的NSViewController接口.
Apple的文档中的示例代码以及可在线找到的Controller代码不起作用.尽管如此,它编译时没有问题,webview保持不活动状态.
有什么东西我没看到,或者这是WKWebView中的错误?
我甚至从教程中复制了一些代码,显示了如何为iOS做这个,只是将UIViewController更改为NSViewController(因为这是唯一的区别),但它没有用.
ViewController.swift中的以下代码不起作用.它也不起作用
class ViewController: NSViewController, WKUIDelegate
import Cocoa;
import WebKit;
class ViewController: NSViewController {
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
let url=URL(string: "http://safetec-cam.biz/images/webcam_extern/bad-nauheim_bahnhof_west.jpg");
webView.load(URLRequest(url: url!));
}
}
Run Code Online (Sandbox Code Playgroud)
如果用UIViewController 从https://developer.apple.com/documentation/webkit/wkwebview交换NSViewController 图像,这样做也行不通
我建议您从头开始:
设置要加载的URL:
let myURLString = "https:yourWebLink"
let url = NSURL(string: myURLString)
let request = NSURLRequest(URL: url!)
Run Code Online (Sandbox Code Playgroud)
在webview中初始化和加载请求:
let webView = WKWebView(frame: self.view.frame)
webView.navigationDelegate = self
webView.loadRequest(request)
Run Code Online (Sandbox Code Playgroud)
实现WKNavigationDelegate来跟踪页面加载/错误:
extension ViewController: WKNavigationDelegate {
func webView(webView: WKWebView, didStartProvisionalNavigation navigation: WKNavigation!) {
print("Strat to load")
}
func webView(webView: WKWebView, didFinishNavigation navigation: WKNavigation!) {
print("finish to load")
}
func webView(webView: WKWebView, didFailProvisionalNavigation navigation: WKNavigation!, withError error: NSError) {
print(error.localizedDescription)
}
}
Run Code Online (Sandbox Code Playgroud)
有关更多参考,请检查:https : //iosdevcenters.blogspot.com/2016/05/creating-simple-browser-with-wkwebview.html
归档时间: |
|
查看次数: |
13791 次 |
最近记录: |