Uiwebview 用 Swift 隐藏/显示 UInavigationbar
Posted
技术标签:
【中文标题】Uiwebview 用 Swift 隐藏/显示 UInavigationbar【英文标题】:Uiwebview hide/show UInavigationbar with Swift 【发布时间】:2015-07-01 13:15:12 【问题描述】:我正在尝试实现一个非常简单的 UIWebView,它使用 UINavigationBar 在 Swift 中进行导航。我是 ios 编程新手,花了很多时间尝试提出的解决方案,但我完全陷入困境。故事板看起来像:
->查看
->->导航栏
->->网页视图
只有当我不在主页上时,导航栏才会返回到 Web 视图中。我正在尝试使用如下所示的 sn-p 自动隐藏 webview 主页上的导航栏。但是,当我尝试使用 self.Webview.frame = self.view.bounds
调整 Web 视图的大小时,它会显示与运营商和电池图标所在的页面顶部重叠。如果我不进行调整大小,我会在 UINavigationBar 隐藏的地方得到一个空白区域。
func webViewDidFinishLoad(webView: UIWebView)
let currentUrl : NSString = (Webview.request?.URL!.absoluteString)!
var currentUrlString = currentUrl as String
if currentUrlString.rangeOfString("index.html") != nil
//HIDE THE NAVIGATION BAR
myNavigationBar.hidden=true
//ADJUST THE WEBVIEW SIZE TO ACCOUNT FOR THE HIDDEN BAR
self.Webview.frame = self.view.bounds
else
myNavigationBar.hidden=false
Webview.frame = self.view.bounds
【问题讨论】:
【参考方案1】:用途:
self.navigationController?.navigationBarHidden = false // or true
代替:
myNavigationBar.hidden
【讨论】:
我没有连接导航控制器。即使我依靠 webview 进行导航而不是应用程序,这是否需要?顺便说一句,我修复了情节提要层次结构的格式。以上是关于Uiwebview 用 Swift 隐藏/显示 UInavigationbar的主要内容,如果未能解决你的问题,请参考以下文章
Swift:在 UIWebview Scroll 上隐藏 UIStackView
swift - UIWebView 和 WKWebView(iOS12 之后替换UIWebView)