Beispiel für eine benutzerdefinierte Klasse in der Transformable-Eigenschaft von Core Data

8

Wenn Sie eine Transformable -Eigenschaft für Kerndaten erstellen, fügen Sie normalerweise den NSValueTransformer -Code zur Klasse der Entität hinzu und füllen ihren Namen im Feld Value Transformer des Datenmodell-Inspektors aus, aber was ist mit Custom Class ? Feld? Was ist der Zweck dieses Feldes? Können Sie ein einfaches Beispiel geben?

    
SpaceDog 31.08.2016, 14:05
quelle

1 Antwort

4

"Benutzerdefinierte Klasse" steuert, was mit dieser Eigenschaft passiert, wenn Xcode Unterklassen von / extensions auf NSManagedObject generiert. Wenn Sie dieses Feld leer lassen, wird Ihr snapshot -Feld als NSObject deklariert. Wenn Sie einen Klassennamen eingeben, deklariert Xcode das Attribut als den von Ihnen eingegebenen Klassennamen.

In der Praxis bedeutet das, dass, wenn Sie snapshot transformierbar machen, dieses Feld leer bleibt und Xcode dann eine Unterklasse für Sie generiert, wird die Eigenschaft wie folgt deklariert:

%Vor%

Wenn Sie andererseits dieses Feld ausfüllen, indem Sie zum Beispiel UIImage eingeben, wird die Eigenschaft, wenn Xcode die Unterklasse generiert, wie folgt deklariert:

%Vor%

Wenn Sie einen Klassennamen eingeben, kann der Compiler Ihre Zuweisungen überprüfen. Wenn beispielsweise die Eigenschaft UIImage lautet, versuchen Sie nicht versehentlich, NSData zuzuweisen.

    
Tom Harrington 31.08.2016, 16:38
quelle

Tags und Links