Ios 从UITableView行选择导航到UIWebView
下面是我的第一个视图控制器的代码,其中包含tableview 我想在下一页显示uiwebviewIos 从UITableView行选择导航到UIWebView,ios,swift,uiwebview,Ios,Swift,Uiwebview,下面是我的第一个视图控制器的代码,其中包含tableview 我想在下一页显示uiwebview import UIKit class menuTableViewController: UITableViewController { var menuNameArr:Array = [String]() var iconeImage:Array = [UIImage]() var urlstring:Array = [URL]() override func viewDidLoad() {
import UIKit
class menuTableViewController: UITableViewController {
var menuNameArr:Array = [String]()
var iconeImage:Array = [UIImage]()
var urlstring:Array = [URL]()
override func viewDidLoad() {
super.viewDidLoad()
menuNameArr = ["Anasayfa","Sınıf Listeleri","Ders Programı","Portal","Mesaj","Hesabım","İletişim","Paylaş","Hesaptan Çıkış"]
iconeImage = [UIImage(named: "anasayfa")!,
UIImage(named: "sinif")!,
UIImage(named: "ders")!,
UIImage(named: "portal")!,
UIImage(named: "mesaj")!,
UIImage(named: "hesabim")!,
UIImage(named: "iletisim")!,
UIImage(named: "paylas")!,
UIImage(named: "hesap")!]
urlstring = [URL(string:"http://sinifdefterim.com/portal.aspx")!,
URL(string:"http://sinifdefterim.com/siniflistesi.aspx")!]
}
override func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return menuNameArr.count
}
override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "menuTableViewCell") as! menuTableViewCell
cell.imgIcon.image = iconeImage[indexPath.row]
cell.lblMenuName.text! = menuNameArr[indexPath.row]
return cell
}
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
performSegue(withIdentifier:"ssss", sender: urlstring[indexPath.row])
}
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
let destinationNavigationController = segue.destination as! UINavigationController
let mainVC:ViewController = destinationNavigationController.topViewController as! ViewController
mainVC.mainURL = sender as! URL
}
}
如何在下一个viewcontroller上打开webview上的选定url?
您的menuTableViewController中只有2个URL数组元素。因此,您必须在didSelect方法中写入条件,如下所示:
override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if indexPath.row == 0 || indexPath.row == 1 {
performSegue(withIdentifier:"ssss", sender: urlstring[indexPath.row])
}
}
在下一个视图控制器(UIViewController)上:
1) 将UIWebView添加到视图中。使用助理编辑器连接webview插座,并命名您的webview
2) UIWebView在viewDidLoad中加载URL:
@IBOutlet weak var myWebView: UIWebView!
var mainURL = "" //This value you are getting from menuTableViewController
override func viewDidLoad() {
super.viewDidLoad()
let url = URL(string: mainURL)
let requestObject = URLRequest(url: url!)
myWebView.loadRequest(requestObject)
}
出了什么问题,你应该在正文中解释你的问题,而不是仅仅发布一堆代码