为 UIWebkit 赋予价值并更改实例化 ViewController [Swift 4] [英] Give Value to UIWebkit and change instantiate ViewController [Swift 4]
问题描述
我的第一个 ViewController 中有一个 tableView.它的功能之一就是这个
I have a tableView in my first ViewController. One of its functions is this one
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print("Row \(indexPath.row) selected")
let mainStoryboard:UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let webViewController = mainStoryboard.instantiateViewController(withIdentifier: "webViewController") as! webViewController
self.navigationController?.pushViewController(webViewController, animated: true)
}
如您所见,我想在选择一行时更改 viewController,并根据选择我想在下一个 ViewController 上显示一个网站.我不知道如何将行值传递给下一个 ViewController 或在此函数中设置 webView.
As you can see I want to change the viewController when an row is selected and based on the selection I want to present a Website on the next ViewController. I don't know how to pass the row value to the next ViewController or set the webView in this function.
我想像这样打开我的网址,但可能在每行一个网址的 if-else 语句中.
I want to open my urls like this, but probably in a if-else statement for each row one url.
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string:"https://www.google.com")
let request = URLRequest(url: url!)
angebotWebView.load(request)
}
感谢您的帮助
推荐答案
在你的 webViewController
中创建一个字符串变量:
Create a String Variable in Your webViewController
:
var urlString: String = "" // here
@IBOutlet weak var webView: WKWebView!
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: urlString) // put here
let request = URLRequest(url: url!)
angebotWebView.load(request)
OR
if let urlString = urlString, let url = URL(string: urlString) {
let request = URLRequest(url: url)
angebotWebView.load(request)
}
}
在你的这个方法中:-
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
print("Row \(indexPath.row) selected")
let mainStoryboard:UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let webViewController = mainStoryboard.instantiateViewController(withIdentifier: "webViewController") as! webViewController
webViewController. urlString = yourUrlArray[indexPath.row] // call it here
self.navigationController?.pushViewController(webViewController, animated: true)
}
这篇关于为 UIWebkit 赋予价值并更改实例化 ViewController [Swift 4]的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!