別のView ControllerからUIWebiViewを再ロードする際に問題があります。私は、新しいURLを送信し、それをリロードしようとすると、webviewのためにアプリケーションがクラッシュするnilされています。別のViewControllerからの新しいURLでWebViewを再ロードする
私は問題を絞り込むための簡単なテストアプリケーションを作った。現在は、ウェブ上にgoogleと表示されているボタンが表示された単純なページです。ボタンを押すと、モーダルに別のページが表示されます。このページには1つのボタンしかありません。このボタンを押すと、それ自体が解除され、最初のビューで新しいURLで最新表示する機能が呼び出されます。 HERESに私のコード:
class ViewController: UIViewController {
@IBOutlet var webView: UIWebView!
override func viewDidLoad() {
super.viewDidLoad()
let urlRequest = NSURLRequest(URL: NSURL(string: "https://www.google.com")!)
webView.loadRequest(urlRequest)
}
@IBAction func showViewPressed(sender: AnyObject) {
let showView = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("showView")
self.presentViewController(showView, animated: true, completion: nil)
}
func reloadWebView(newURL: String) {
let urlRequest = NSURLRequest(URL: NSURL(string: newURL)!)
webView.loadRequest(urlRequest)
}
}
と2番目のビューのために:
class ReloadViewController: UIViewController {
@IBAction func buttonPressed(sender: AnyObject) {
dismissViewControllerAnimated(true, completion: {
ViewController().reloadWebView("https://www.yahoo.com")
})
}
}
それはfatal error: unexpectedly found nil while unwrapping an Optional value
ビューコントローラ間でウェブビューを共有しようとしないのはなぜですか?あなたのプロジェクトをGithubにプッシュして、あなたのコードを見ることができ、私は助けてくれるでしょうか? –