[英]How to modify a iOS WKWebView Swift code to do the same on macOS?
這是我目前擁有的,適用於 iOS。
這是一個簡單的測試試驗,用於在 iOS 上加載 WebView。 這不應該放在 AppStore 或類似的東西上 - 所以請不要通過將我鏈接到關於“Apple 如何不允許它”的關於 stackoverflow 的文章來提供幫助。 我只想在本地運行這個應用程序。
我開始這樣做,因為我無法弄清楚如何在 macOS 上進行類似的事情。
我現在擁有的代碼如下 - 基本上是從多個 iOS WKWebView Swift 代碼教程中粘貼和修改的。
視圖控制器.swift
import UIKit
import WebKit
let webView = WKWebView()
class ViewController: UIViewController {
override func loadView() {
self.view = webView
if let url = URL(string: "https://daringfireball.net") {
let request = URLRequest(url: url)
webView.load(request)
}
}
override func viewDidLoad()
{
super.viewDidLoad()
let request = URLRequest(url: URL(string: "https://daringfireball.net")!)
webView.load(request)
}
}
現在,這是我的問題:如何更改它以便它可以在 macOS Catalina 上運行,以便我可以將它保存為 .app 並運行它。 再次強調,不要試圖將其下載到 AppStore - 僅供本地使用。
我認為 macOS 沒有“UIKit”。 另外,在代碼中有兩個地方指定了相同的 URL 是否是多余的,是否應該只覆蓋一個?
您快到了 :)
這是您需要添加到 macOS 項目以使其加載網頁的代碼
import Cocoa
import WebKit
class ViewController: NSViewController {
let webView = WKWebView()
override func loadView() {
view = webView
}
override func viewDidLoad() {
super.viewDidLoad()
let request = URLRequest(url: URL(string: "https://daringfireball.net")!)
webView.load(request)
}
}
macOS 沒有UIKit
是完全正確的,而是使用Cocoa
如您所見。
當您質疑自己時,我冒昧地刪除了您的“加載網頁”代碼片段之一。 現在我們只需在viewDidLoad
加載它。
如果您在 Xcode 中創建一個新的 macOS 項目並粘貼以上內容,然后運行您的項目.....沒有任何反應:(
那是因為我們需要做最后一件事。
因此,轉到您的項目概述並選擇“簽名和功能”窗格。
您需要在 App Sandbox 下勾選“Outgoing Connections (Client)”,如下所示
希望您現在會看到您的網頁已加載。
希望有幫助。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.