2017-01-24 2 views
0

Ich versuche, eine App mit einer Schaltfläche zu erstellen, die eine Webansicht starten.Xcode Ein WebView in einem anderen ViewController öffnen

Ich habe viele Tutorial gefolgt und differents Thema über das Thema gelesen, aber ich kann es nicht bekommen arbeiten: Ich bin diese Nachricht bekommen, wenn ich meinen Code testen:

"Cannot call value of non-function type UIWebView!" 

Hier die Schritte, die ich bis jetzt tat

  • eine Schaltfläche in der Hauptansicht-Controller Hinzufügen
  • eine andere Ansicht-Controller erstellen namens 'WebViewController'
  • Hinzufügen eines segue zu Link auf die Schaltfläche WebViewController
  • Erstellen einer neuen Cocoa Touch-Klasse-Datei 'WebViewController'
  • Einstellung der WebViewController benutzerdefinierte Klasse mit der WebViewController Klasse
  • eine webView im WebViewController Viewcontroller namens 'myWebView' Hinzufügen

hier ist die WebViewController Klasse (in denen bekam ich die Fehlermeldung, wenn ich das Projekt ausführen)

import UIKit 

    class WebViewController: UIViewController{ 

    @IBOutlet weak var myWebView: UIWebView! 

    override func viewDidLoad() { 
    super.viewDidLoad() 

    // Do any additional setup after loading the view. 
    //define url 
    let url = NSURL (string: "http://www.my-url.com") 
    //request 
    let req = NSURLRequest(url: url as! URL) 
    //load request into the webview 
    myWebview(req as URLRequest) //error happens here : 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 


/* 
// MARK: - Navigation 

// In a storyboard-based application, you will often want to do a little preparation before navigation 
override func prepare(for segue: UIStoryboardSegue, sender: Any?) { 
    // Get the new view controller using segue.destinationViewController. 
    // Pass the selected object to the new view controller. 
} 
*/ 

} 

hier ist ein Screenshot (pictur e spricht mehr als lange Text, rechts =) enter image description here

Vielen Dank!

+1

siehe diese einmal http://stackoverflow.com/questions/39682344/swift-3-webview –

+0

Danke @ Anbu.Karthik! Es funktioniert ! Ich weiß nicht warum, aber es funktioniert definitiv! – skytorner

Antwort

0

Versuchen zu verwenden:

let url = NSURL (string: "https://google.com") 
    let request = NSURLRequest(url: url as! URL) 
    self. myWebView.loadRequest(request as URLRequest) 

Dieser Code für mich

+0

Danke für Ihre Antwort! Das werde ich später versuchen! – skytorner

0

funktioniert können Sie SFSafariViewController verwenden:

import SafariServices 

let url = URL(string: "https://www.google.com") 
let safariVC: SFSafariViewController = SFSafariViewController(url: url) 

self.present(safariVC, animated: true, completion: nil) 

Ich benutzte swift 3 Syntax. Dieser Code öffnet eine Safari-Webansicht, und Sie müssen keine Segmente erstellen und keine Steuerelemente im Storyboard anzeigen.

+0

Sie können Farbton, Titel und andere Eigenschaften festlegen. Ich hoffe es hilft! –

+0

Ich werde das später auch versuchen! Vielen Dank ! – skytorner

Verwandte Themen