2016-12-05 2 views
-3

Ich mache eine Anwendung, wo der Benutzer Gebäude auf der Karte auswählen und in der Liste speichern kann. Alles ist in Ordnung, aber ich muss die Benutzerauswahl nach dem Schließen der App speichern.Wie man dauerhaften Speicher für eine iOS App macht?

func action(_ gestureRecognizer:UIGestureRecognizer) { // GESTURE RECOGNIZER FUNCTION 

    if gestureRecognizer.state == UIGestureRecognizerState.began { 

     let touchPoint = gestureRecognizer.location(in: self.map) 

     let newCoordinate = self.map.convert(touchPoint, toCoordinateFrom: self.map) 

     let location = CLLocation(latitude: newCoordinate.latitude, longitude: newCoordinate.longitude) 

     CLGeocoder().reverseGeocodeLocation(location, completionHandler: { (placemarks, error) -> Void in 


      var title = "" 

      if (error == nil) { 

       if let p = placemarks?[0] { 


        var subThoroughfare:String = "" 
        var thoroughfare:String = "" 

        if p.subThoroughfare != nil { 

         subThoroughfare = p.subThoroughfare! 

        } 

        if p.thoroughfare != nil { 

         thoroughfare = p.thoroughfare! 

        } 
+1

Willkommen bei Stack-Überlauf! Sie können die [Tour] (http://stackoverflow.com/tour) nehmen und [How to Ask] (http://stackoverflow.com/help/how-to-ask) eine gute Frage stellen und ein [Minimal , Vollständiges und überprüfbares Beispiel] (http://stackoverflow.com/help/mcve). Das erleichtert es uns, Ihnen zu helfen. – Starlord

Antwort

0

Sie können die Gebäude-ID in einem Array speichern und dieses Array in UserDefaults speichern.

UserDefaults.standard.set(value: buildingIds, forKey: "myBuildingIds") 

Wenn Sie die App öffnen, einfach fragen:

if let myBuildingArrays = UserDefaults.standard.value(forKey: "myBuildingIds"){ 
//And here you iterate each value of the array to load them into your list. 
} 

Weitere Informationen: https://developer.apple.com/reference/foundation/userdefaults

Verwandte Themen