Properties : agréger deux properties vers un attribut
nark
Membre
Salut à tous,
Donc, je suis en Core Data, et j'utilise des propriétés.
J'ai un problème assez simple, j'ai trois attributs aType, aValue et aPreview (NSString) accessibles et modifiable dans ma vue.
Je voudrais simplement que la valeur mon troisième attribut soit le résultat du formatage des deux premiers. Un exemple vaut mieux qu'un long discours:
Type : int
Value : myValue
Preview : int myValue;
Je voudrais que la Preview soit updatée de façon transparente à la modification du type on de la valeur. J'ai vu qu'on pouvait rediriger le getter et le setter d'une propertie, avec un truc du genre:
Mais après plusieurs tests, je n'ai pas de résultat.
Quelqu'un aurait-il déjà réussi cette exploit?
Sinon, y a t'il une autre solution pour conserver le comportement des bindings et la simplicité de CoreData; peut-être les valueTransformer?
Donc, je suis en Core Data, et j'utilise des propriétés.
J'ai un problème assez simple, j'ai trois attributs aType, aValue et aPreview (NSString) accessibles et modifiable dans ma vue.
Je voudrais simplement que la valeur mon troisième attribut soit le résultat du formatage des deux premiers. Un exemple vaut mieux qu'un long discours:
Type : int
Value : myValue
Preview : int myValue;
Je voudrais que la Preview soit updatée de façon transparente à la modification du type on de la valeur. J'ai vu qu'on pouvait rediriger le getter et le setter d'une propertie, avec un truc du genre:
@property (retain, getter=typeAndValue) NSString *anAttribute;<br /><br />- (NSString *)typeAndValue<br />{<br /> return [NSString stringWithFormat:@"%@%@%@%@", self.aType, @" ", self.aValue, @";"];<br />}
Mais après plusieurs tests, je n'ai pas de résultat.
Quelqu'un aurait-il déjà réussi cette exploit?
Sinon, y a t'il une autre solution pour conserver le comportement des bindings et la simplicité de CoreData; peut-être les valueTransformer?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
cf Hillegass chapitres 11 et 30
Je teste tout de suite.
Grand merci, le read-only avec la définition du getter marche très bien.
On peut ainsi mettre la property en mode transient dans le xcdatamodel, pour avoir un modèle complet.
Pour assurer les mises à jour lors d'un changement de aType ou aValue, il faut également implémenter la méthode
Oui, j'ai du implémenté ça, comme le dit Hillegass.