ViewController 加载始终相同 link
ViewController is loading always the same link
我是 swift 和 ios.The View Controller 的新手,启动始终相同 link 并且不显示带有第二个按钮的网格菜单 scene.What我在这里做错了吗?
我在main.storyboard三个场景。
第一个场景是 navigation.The 第二个场景是一个带有按钮的网格菜单,根据按钮单击将在位于第三个 scene.The 第三个场景的 webview 中打开一个 link包括一个应打开特定 link 的视图,具体取决于步骤 2
中的单击按钮
import UIKit
import WebKit
class ViewController: UIViewController, WKNavigationDelegate {
var webView : WKWebView!
var webi:String = "https://www.google.al"
override func viewDidLoad() {
print("‼️OMG:viewDidLoad", webi)
super.viewDidLoad()
let url = URL(string: webi)!
webView.load(URLRequest(url: url))
let refresh = UIBarButtonItem(barButtonSystemItem: .refresh, target: webView, action: #selector(webView.reload))
toolbarItems = [refresh]
navigationController?.isToolbarHidden = false
}
override func loadView() {
webView = WKWebView()
webView.navigationDelegate = self
view = webView
}
@IBAction func Menu1(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1")
webi = "https://www.menu1.com"
}
@IBAction func Menu2(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1")
webi = "https://www.menu2.com"
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
title = webView.title
}
}
您的问题是您更改了 urlStr webi
而没有再次重新加载 webview
func refresh() {
let url = URL(string: webi)!
webView.load(URLRequest(url: url))
}
@IBAction func Menu1(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1")
webi = "https://www.menu1.com"
self.refresh()
}
@IBAction func menu2(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1") // other link
webi = "https://www.menu1.com"
self.refresh()
}
///
Navigation->buttons Menu VC -> webViewVC
当您在按钮菜单中时
let vc = ViewController()
vc.webi = "" // set link according to the clicked button
self.navigationController?.pushViewController(vc,animated:true)
看这个Demo
我是 swift 和 ios.The View Controller 的新手,启动始终相同 link 并且不显示带有第二个按钮的网格菜单 scene.What我在这里做错了吗? 我在main.storyboard三个场景。
第一个场景是 navigation.The 第二个场景是一个带有按钮的网格菜单,根据按钮单击将在位于第三个 scene.The 第三个场景的 webview 中打开一个 link包括一个应打开特定 link 的视图,具体取决于步骤 2
中的单击按钮import UIKit
import WebKit
class ViewController: UIViewController, WKNavigationDelegate {
var webView : WKWebView!
var webi:String = "https://www.google.al"
override func viewDidLoad() {
print("‼️OMG:viewDidLoad", webi)
super.viewDidLoad()
let url = URL(string: webi)!
webView.load(URLRequest(url: url))
let refresh = UIBarButtonItem(barButtonSystemItem: .refresh, target: webView, action: #selector(webView.reload))
toolbarItems = [refresh]
navigationController?.isToolbarHidden = false
}
override func loadView() {
webView = WKWebView()
webView.navigationDelegate = self
view = webView
}
@IBAction func Menu1(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1")
webi = "https://www.menu1.com"
}
@IBAction func Menu2(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1")
webi = "https://www.menu2.com"
}
func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
title = webView.title
}
}
您的问题是您更改了 urlStr webi
而没有再次重新加载 webview
func refresh() {
let url = URL(string: webi)!
webView.load(URLRequest(url: url))
}
@IBAction func Menu1(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1")
webi = "https://www.menu1.com"
self.refresh()
}
@IBAction func menu2(_ sender: Any) {
print("‼️OMG:viewDidLoad with menu1") // other link
webi = "https://www.menu1.com"
self.refresh()
}
///
Navigation->buttons Menu VC -> webViewVC
当您在按钮菜单中时
let vc = ViewController()
vc.webi = "" // set link according to the clicked button
self.navigationController?.pushViewController(vc,animated:true)
看这个Demo