Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
iOS Swift网络视图问题_Ios_Swift_Uitableview_Uiwebview_Swift4 - Fatal编程技术网

iOS Swift网络视图问题

iOS Swift网络视图问题,ios,swift,uitableview,uiwebview,swift4,Ios,Swift,Uitableview,Uiwebview,Swift4,我是iOS编程新手,尝试制作简单的基于TableViewCell的应用程序,点击该应用程序,我会打开一个带有动态URL的webView 在main.storyboard中,我添加了一个UIViewController,其中我添加了Webview和NavigationBar webView总是全屏打开。因此,如果我添加导航栏或后退按钮,它不会显示在视图中 如何从webView导航回包含项目列表的表视图页面 我的代码: import UIKit import WebKit class WebVie

我是iOS编程新手,尝试制作简单的基于
TableViewCell
的应用程序,点击该应用程序,我会打开一个带有动态URL的
webView

在main.storyboard中,我添加了一个
UIViewController
,其中我添加了
Webview
NavigationBar

  • webView总是全屏打开。因此,如果我添加导航栏或后退按钮,它不会显示在视图中

  • 如何从webView导航回包含项目列表的表视图页面

  • 我的代码:

    import UIKit
    import WebKit
    
    class WebViewController: UIViewController, WKNavigationDelegate {
    
        var webView: WKWebView!
        func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) {
            title = webView.title
        }
        override func viewDidLoad() {
            super.viewDidLoad()
            let url = URL(string: webURL)!
            print(url)
            webView.load(URLRequest(url: url))
        }
    
        override func loadView() {
            webView = WKWebView()
            webView.navigationDelegate = self
            view = webView
        }
    }
    
  • 现在,在上面的代码中,我添加了webView作为一个简单变量。 一旦我将其设置为
    @IBOutlet
    并链接到此控制器,代码就会抛出
    SIGBART错误
    。有什么原因吗

  • 我想使用webview的导航方法,如:

    @IBAction func backAction(sender: AnyObject) {
        if webView.canGoBack {
            webView.goBack()
        }
    }
    
    @IBAction func forwardAction(sender: AnyObject) {
        if webView.canGoForward {
            webView.goForward()
        }
    }
    
    @IBAction func refreshAction(sender: AnyObject) {
        webView.reload()
    }
    
    @IBAction func stopAction(sender: AnyObject) {
        webView.stopLoading()
    }
    
    但是,由于我无法将WebView添加为一个出口,上述方法对我不起作用

  • TableController代码,我在其中单击一行执行segue:

    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        performSegue(withIdentifier: "recipeWebView", sender: self)
    }
    

    是,因为导航栏无法执行操作,所以您没有添加导航控制器

    按照此类型->表视图->导航控制器->uiviewcontroller->网络视图


    让我知道它是否有用?

    您需要将tableview嵌入UINavigationController,然后在单元格上单击“推送包含WebView的ViewController”。在推送WebViewController的位置添加控制器代码您是如何从第一个ViewController导航到第二个view controller的?使用table controller代码更新信息哪个是表演还是表演?我很想,但我在这里没有足够的声誉D