【问题标题】:Jump to the second ViewController, the IBOutlet UIWebView in it is not inital跳转到第二个ViewController,里面的IBOutlet UIWebView不是initial
【发布时间】:2014-11-07 17:42:19
【问题描述】:

在第一个viewController的viewDidAppear方法中,我跳转到第二个viewController使用:

self.presentViewController(secondViewController, animated: true, completion: nil)

在第二个 viewController 中,当我在 viewDidLoad 函数中调用 IBOutlet webview 时,它始终为零。我确信 IBOutlet 连接正确。 我英文不太好。我希望我很好地描述了这个问题。谢谢你的回答!

【问题讨论】:

  • 您是否从情节提要创建了secondViewController
  • 是的,我愿意。如果我将 secondViewController 设置为默认值(启动视图控制器),则 webView 可以正确显示。
  • 你能显示你初始化secondViewController的代码吗?
  • 导入 UIKit 类 AutherPageViewController: UIViewController { @IBOutlet weak var authWebView: UIWebView!覆盖 func viewDidLoad() { super.viewDidLoad() 让 urlstring = "baidu.com" 让 url = NSURL(string: urlstring) 让 request = NSURLRequest(URL: url!) authWebView.loadRequest(request) } 覆盖 func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // 处理所有可以重新创建的资源。 } }
  • 不是这个。我在问你写self.presentViewController(secondViewController, animated: true, completion: nil)之前的代码。

标签: swift uiwebview


【解决方案1】:

您正在初始化svc而没有情节提要。这就是您的webView 变为nil 的原因。您需要从情节提要中对其进行初始化。为此,您需要在情节提要中为 SecondViewController 提供情节提要 ID。像这样:

现在您可以像下面的代码一样实例化它:

var secondViewController: SecondViewController {
    return self.storyboard?.instantiateViewControllerWithIdentifier("second") as SecondViewController
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-19
    • 1970-01-01
    相关资源
    最近更新 更多