0

一般来说,我是 swift 和苹果开发的新手(来自 JS 世界)。我正在尝试通过包装 WKWebView 来做一个简单的桌面应用程序。ViewController 创建 webView 的部分工作正常。至少看起来是这样:它加载了一个网页:)

但是当我单击任何输入字段时,我无法写任何东西。该字段中甚至没有可见的光标。

基本上只有通过鼠标/触摸板点击才有效。但鼠标光标悬停在元素(例如按钮和文本字段)上时不会改变。在我看来,网页上方有某种蒙版/图层。单击会传播到页面本身,但不会传播到悬停和击键

应用程序中是否有任何特殊的项目设置/权限启用键盘?如何使页面输入可编辑?

更多细节:

  • 单击文本字段有效(它会根据焦点选择器更改边框颜色)
  • 单击<a>webview 作品中的链接
  • 鼠标右键单击似乎有效(它显示复制/粘贴选项等)
  • 通过鼠标右键单击粘贴到现场工作

代码:

import Cocoa
import SafariServices.SFSafariApplication
import WebKit

class ViewController: NSViewController, WKNavigationDelegate {

     @IBOutlet var ww: WKWebView!

     override func viewDidLoad() {
         super.viewDidLoad()

         ww.navigationDelegate = self
         ww.load(URLRequest(url: URL(string: "https://www.google.com")!))
         view = ww
    }
}

我的故事板: 在此处输入图像描述

  • Ww是 WebKit 视图
  • Ww覆盖所有View区域(鼠标拖放)

感谢您的任何回答或提示!

4

1 回答 1

0

您的原始代码对我有用。您需要禁用沙盒功能:

在此处输入图像描述

禁用此功能后,我既可以加载 webview 也可以与 webview 交互。

于 2018-11-28T13:00:22.340 回答