Insgesamt noob hier zu Swift 3. Alles, was ich tun muss, ist einen doppelten Wert von einem ViewController zu einem anderen über die 2 Benutzereingabe Textfelder übergeben. Ich habe zahlreiche Lösungen ausprobiert und alles gelesen, was ich bei der Weitergabe von Daten zwischen ViewControllern finden kann. Ich erhalte einen "fatalen Fehler: unerwartet wurde beim Dekomprimieren eines optionalen Werts Null gefunden". Es fällt mir schwer zu verstehen, wie die Variablen verpackt und entpackt werden, und ich bin mir sicher, dass es etwas Einfaches ist.Übergeben eines Double zwischen ViewControllers Swift 3
Hier ist mein erster Viewcontroller:
import UIKit
var longitude: Double?
var latitude: Double?
class ViewController: UIViewController {
@IBOutlet var getLongitude: UITextField!
@IBOutlet var getLatitude: UITextField!
@IBOutlet var mapbutton: UIButton!
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
@IBAction func MapBtn(_ sender: Any) {
performSegue(withIdentifier: "segue", sender: self)
longitude = Double(getLongitude.text!)!
latitude = Double(getLatitude.text!)!
}
}
Und das ist der SecondViewController:
class SecondViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
let camera = GMSCameraPosition.camera(withLatitude: latitude!, longitude: longitude!, zoom: 6.0)
let mapView = GMSMapView.map(withFrame: CGRect.zero, camera: camera)
view = mapView
// Creates a marker in the center of the map.
let marker = GMSMarker()
marker.position = CLLocationCoordinate2D(latitude: latitude!, longitude: longitude!)
marker.map = mapView
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
}
Ich habe das gerade herausgefunden! Danke für die Hilfe!!! – Caridore