Conversion d'un objet de classe personnalisé en NSData
J'ai une classe personnalisée que je veux mettre en NSUserDefaults
. Je me dit que j'ai besoin de convertir l'objet de classe dans les données, afin de la sauver de NSUserDefaults
. J'ai trouvé beaucoup de discrètes chaîne ou ints à NSData
exemples, mais rien sur la classe personnalisée pour NSData
. Je sais très peu de choses sur les subtilités de la NSData
encodage etc. Toute aide est appréciée
EDIT: Alors que je sais qu'il existe le même genre de réponses ici, aucun d'entre eux sont en Swift. La traduction entre les langues, c'est faisable, mais il est extrêmement fastidieux et parfois très contre-intuitive.
source d'informationauteur Tamarisk | 2015-09-12
Vous devez vous connecter pour publier un commentaire.
Voici un exemple simple pour vous:
Testé avec aire de jeux.
Espère que cette aide.
Ce lien peut vous aider à
Il est important que la classe étendre
NSObject
etNSCoding
car le convertir besoin de sa classe,NSCoding
est une interface pour sérialiser et désérialiser votre classeEnregistrement personnalisé SWIFT classe avec NSCoding à UserDefaults
Cet exemple de code suivant est basé sur Richie Rich réponse (voir ci-dessus) et passe des tests dans cet environnement:
Xcode version 9.1 (9B55)
Swift version 4.0.2 (swiftlang-900.0.69.2 clang-900.0.38, Target: x86_64-apple-macosx10.9)
MacBook Air (11-inch, Mid 2012) with macOS High Sierra (version 10.13.1)