快速从另一个视图控制器更改 webview 的 url

Posted

技术标签:

【中文标题】快速从另一个视图控制器更改 webview 的 url【英文标题】:Changing url of webview from another viewcontroller in swift 【发布时间】:2017-06-09 11:08:48 【问题描述】:

当我单击另一个视图控制器上的单元格选项卡时,我想在Main ViewController 中重新加载webview。实际上另一个 viewController 是一个滑动菜单控制器。当我单击该单元格时,我想重新加载位于 MainViewController 中的 webview 并使用新的 url 实际将我带到登录网页。

请在 Swift 3 中提供解决方案。

有人帮忙吗?

提前致谢。

【问题讨论】:

使用代理传递新的 URL 并加载 web 视图 您能以更具体的方式帮助我吗?带有示例和代码 sn-ps ? 参考这个网站了解代表blog.bobthedeveloper.io/… 【参考方案1】:

我觉得你应该在你的 WebView 和 ViewController 之间使用 Table View 委托模式tutorial。

它也可以通过使用 NSNotificationCenter (tutorial) 工作 - 但我个人不推荐这个解决方案

【讨论】:

【参考方案2】:

将此代码添加到具有 webview 的 viewController 的 viewDidLoad 方法中

    NotificationCenter.default.addObserver(self, selector: #selector(reloadWebView), name: NSNotification.Name(rawValue: "load"), object: nil)

在同一个viewController中添加下面的函数

    func reloadWebView()
        //reload your webview here
    

当幻灯片菜单选择发生在幻灯片视图控制器调用下面的代码时。

NotificationCenter.default.post(name: NSNotification.Name(rawValue: "load"), object: nil)

【讨论】:

以上是关于快速从另一个视图控制器更改 webview 的 url的主要内容,如果未能解决你的问题,请参考以下文章

快速从另一个视图控制器修改一个变量

无法从另一个视图控制器更改 UILabel 的文本

快速从另一个访问 Viewcontroller 的实例

按下后退按钮后,从另一个视图控制器更改按钮

如何从另一个视图控制器更改标签的文本并使用核心数据保存

从另一个视图控制器单击 uitableviewcell 后,swift 3 更改 uitableviewcell?