将 webview 分配给子视图

Assigning a webview to a subview

我正在学习有关 WKWebViews 的教程 (https://www.hackingwithswift.com/read/4/2/creating-a-simple-browser-with-wkwebview),我想更改这一行

view = webview

来自

view.subviews[0].subviews[0] = webview

因为我希望网络浏览器处于该特定视图中。但是,XCode 抱怨说:"Cannot assign through subscript: 'subviews' is a get-only property".

为什么它对最高视图有效而对其他视图无效?有没有办法编辑子视图,以便我可以将 webview 分配给我想要的子视图?因为我已经看到可以删除子视图,所以它不像是只读的 属性.

您不能直接分配 readonly 属性。而不是这样做。 view.subviews[0].subviews[0] = webview

只需将网络视图作为子视图添加到您的主视图。

let rootView = view.subviews[0]
rootView.addSubview(webView)
rootView.bringSubview(toFront:webView)

否则执行以下操作

rootView.insertSubview(webView, at: 0)