【问题标题】:How do I use WKWebView on my second scene如何在第二个场景中使用 WKWebView
【发布时间】:2021-03-30 04:20:40
【问题描述】:

几天来我一直在尝试制作一个基本应用程序,我希望 Webkit 视图仅在按下按钮时弹出。我已经输入了我正在使用的代码,但它只显示了网站,没有其他任何内容。

class ViewController: UIViewController {

    var webView: WKWebView!

    override func loadView() {
        webView = WKWebView(frame: .zero, configuration: WKWebViewConfiguration())
        self.view = webView
    }

    override func viewDidLoad() {
        super.viewDidLoad()

        webView.load(URLRequest(url: URL(string: "https://www.apple.com/")!))
    }
}

【问题讨论】:

  • 你需要在同一个视图中或者在另一个视图中按下按钮来弹出WKWebView

标签: swift wkwebview wkwebviewconfiguration


【解决方案1】:

如果您想在两个单独的视图中制作它并在单击按钮后显示第二个 viewController,则可以使用它:

import UIKit
import WebKit

class ViewController: UIViewController, WKUIDelegate {
    
var webview: WKWebView!
    
    override func loadView() {
        let webconfig = WKWebViewConfiguration()
        webview = WKWebView(frame: .zero, configuration: webconfig)
        webview.uiDelegate = self
        view = webview
    }
    override func viewDidLoad() {
        super.viewDidLoad()
        let myurl = URL(string: "https://google.com/")
        let myRequest = URLRequest(url: myurl!)
        webview.load(myRequest)
    } 

但如果您想在同一个视图中显示,您可以通过按钮操作来使用以下内容:

import UIKit
import WebKit

class ViewController: UIViewController, WKUIDelegate {
    
var webview: WKWebView!

    override func viewDidLoad() {
        super.viewDidLoad()
       
    }
    
    func loadMyView() {
        let webconfig = WKWebViewConfiguration()
        webview = WKWebView(frame: .zero, configuration: webconfig)
        webview.uiDelegate = self
        view = webview
    }
    func viewWeb()  {
        let myurl = URL(string: "https://google.com/")
        let myRequest = URLRequest(url: myurl!)
        webview.load(myRequest)
    }
    
    @IBAction func buttonWebViewed(_ sender: Any) {
        loadMyView()
        viewWeb()
    }
    
   
}

【讨论】:

  • 谢谢,但它无法正常工作。我需要第一个设置吗?
  • 它对我来说很好,你可以提供一个你想要实现的图像
  • 这与我在第一个解决方案中所做的相同,1- 您将制作一个按钮,2- 对其进行约束(顶部、底部、培训和领先),3- 通过以下方式将其连接到第二个 ViewController单击按钮 + Ctrl 并将其拖动到第二个控制器,4- 在同一个 viewController 中为其创建一个操作,5- 采用我的解决方案中编写的代码,仅此而已
  • 我可能听起来很愚蠢,但我得到的只是黑屏。
猜你喜欢
  • 2021-12-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多