NSCoding mit Swift struct und enum

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • NSCoding mit Swift struct und enum

    Hallo an alle Entwickler,

    ich habe eine Frage bezüglich des encodings bzw. decodings von structs und enums in swift.
    Mir will es einfach nicht gelingen diese in den entsprechenden Funktionen der jeweiligen Klasse zu (de)codieren um die Klasse später mit dem NSKeyedArchiever zu einem NSData zumachen.
    Folgendes Beispiel:

    Ich habe eine struct:

    Quellcode

    1. struct Privacy
    2. {
    3. var status: Visbility
    4. var votes: Visbility
    5. var image: Visbility
    6. init(status: Visbility, votes: Visbility, image: Visbility)
    7. {
    8. self.status = status
    9. self.votes = votes
    10. self.image = image
    11. }
    12. }
    Alles anzeigen


    die wie man sehen kann auf ein enum Namens Visibility zugreift:

    Quellcode

    1. enum Visbility: String
    2. {
    3. case All = "all"
    4. case Friends = "friends"
    5. case Nobody = "nobody"
    6. }


    In einer Klasse, die eine solche Privacy hält soll diese auch im encodeWithCoder bzw. initWithCoder (de)codiert werden.

    Weiß jemand von euch einen Lösungsansatz?

    Vielen Dank im Voraus.