添加导航控制器到webview以编程方式创建swift 3

时间:2017-04-06 20:30:31

标签: webview swift3 uinavigationcontroller

我有这个代码创建了一个webView:

var webV:UIWebView = UIWebView(frame: CGRect(x: 0, y: 0, width: UIScreen.main.bounds.width, height: UIScreen.main.bounds.height))

我让WebView像这样开始:

func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
    return true
}

我在视图控制器上嵌入了导航控制器,我不想这样做,因为我只想在webview上显示导航,但是哦。

问题是现在导航控制器切断了webview的顶部。我知道我可以调整webview,但那是我应该做的吗?我觉得用导航控制器创建一个webview会更容易。

任何帮助将不胜感激。是的我已经查看了堆栈溢出,但是其他人都在使用viewcontroller来呈现webview,而我创建了webview

1 个答案:

答案 0 :(得分:0)

您创建UIWebView UIScreen.main.bounds宽度和高度。这意味着您的网络视图将占用整个屏幕的大小。但是,您可以在屏幕上显示其他元素,例如状态栏,导航栏(例如,如果您有一个标签栏,底部的标签栏),这将占用一些屏幕空间。

因此,您应该做的是设置布局约束,以便您的Web视图使用顶部和底部布局指南,以便您的Web视图显示在可见区域中。

如果您不确定如何通过代码执行自动布局约束,this tutorial可能有所帮助。

或者,您也可以使用添加webview的视图边界来设置Web视图的大小,但调整高度(和顶部位置)以允许导航栏。