2017-06-16 3 views
0

Hallo Ich habe die richtige Art und Weise erforscht, um dies zu implementieren, und ich fand mehrere Artikel, aber nicht die beste Möglichkeit, dies zu implementieren. Sagen wir, ich habe einen variablen Test, der optional ist und ich möchte einige Getter und Setter hinzufügen. Das Problem, das ich habe, ist die Variable wird Null, wenn die Ansicht lädt, aber ich bekomme immer einen Fehler rechts auf der Get-Funktion, die sagt: EXEC_BAD_ACCESS. Ich kenne den Grund, warum ich das bekomme, aber das System erlaubt mir auch nicht, einfach einen Setter hinzuzufügen, irgendwelche Ideen, damit zu arbeiten? Vielen Dank für Ihre Hilfeoptionals mit get und set

Code:

var test: String? { 
    get { 
    return self.test 
    } 
    set { 
     //some logic 
     test = logic response 
    } 
} 


override func viewdidload(){ 
    super.viewdidload() 
    //some logic 
    test = newValue 
} 

Antwort

3

Ihr Code viele Syntaxfehler hat :)

auch immer Sie suchen nicht nach einem Getter & Setter, was Sie wollen, ist die willSet Beobachter.

class Controller: UIViewController { 

    var test: String? { 
     willSet { 
      // custom logic 
      self.test = newValue 
     } 

    } 


    override func viewDidLoad() { 
     super.viewDidLoad() 

     test = "my value" 
    } 
} 
+1

@appzYouLife Vielen Dank das ist genau das, was ich brauchte! und ich entschuldige mich, ich schrieb das Beispiel auf der Fliege haha ​​danke nochmal tho! – paul590