Ich bekomme Position auf meinem HomeViewController, dann möchte ich das an andere NextViewController weitergeben, aber es gibt immer nichts zurück.Übergabe der Position an andere View-Controller
HomeViewController - Erklärung
struct MyVariables {
static var fetchedLat = String()
static var fetchedLong = String()
}
class HomeViewController: UIViewController,UITableViewDataSource,UITableViewDelegate, CLLocationManagerDelegate, NSFetchedResultsControllerDelegate {
var location: CLLocation!{
didSet{
lat = "\(location.coordinate.latitude)"
long = "\(location.coordinate.longitude)"
}
}
func locationManager(manager: CLLocationManager, didUpdateLocations locations: [CLLocation])
{
let locValue:CLLocationCoordinate2D = manager.location!.coordinate
MyVariables.fetchedLat = String("\(locValue.latitude)")
MyVariables.fetchedLong = String("\(locValue.longitude)")
print("locations = \(locValue.latitude) \(locValue.longitude)")
location = (locations).last
locationManager.stopUpdatingLocation()
}
override func viewDidLoad() {
super.viewDidLoad()
self.locationManager.requestAlwaysAuthorization()
self.locationManager.requestWhenInUseAuthorization()
if CLLocationManager.locationServicesEnabled()
{
locationManager.delegate = self
locationManager.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
locationManager.startUpdatingLocation()
}
}
NextViewController - ViewDidLoad
MyVariables.fetchedLat = outputLat
MyVariables.fetchedLong = outputLong
Bitte lassen Sie mich wissen, ob es eine bessere Art und Weise ist, so dass ich Lat & Lange in allen anderen Viewcontroller in meiner App zugreifen können.
Von wo und wie Sie passierenden Ort? Benutzt du einen Übergang? Wenn ja, wo ist 'prepareForSegue'? – Lion
Ich greife direkt darauf zu, wie ich die globale Variable deklariert habe. –
Sie sollten 'NextViewController'-Objekt und Eigenschaft in diesem' NextViewController' haben. und Sie können diesen Wert für dieses Objekt festlegen !! – Lion