J'ai une méthode setter (setMinimumNumberOfSides) que je veux remplacer après avoir utilisé synthesize. Dans celui-ci, je mets une contrainte sur la variable d'instance pour m'assurer que l'int est dans certaines limites. Plus tard dans une méthode init personnalisée, je suis en train de définir une autre variable d'instance (numberOfSides), mais je dois m'assurer que minimumNumberOfSides et maximumNumberOfSides ont été correctement définis dans les limites. J'ai essayé de changer la valeur de retour sur le setter pour un BOOL, donc je pourrais repasser un OUI ou NON s'il réussissait/échouait, mais cela créait une méthode contradictoire, je devine parce que j'utilise synthétiser et écraser le setter.Substitution d'une méthode Setter et obtention d'informations
Comment puis-je obtenir facilement les informations pour vérifier si le setter a été appelé et retourné avec succès?
-(void)setNumberOfSides:(int)sides
{
if ((sides < maximumNumberOfSides) && (sides > minimumNumberOfSides))
{
numberOfSides = sides;
}
else
NSLog (@"Invalid number of sides: %d is outside the constraints allowed", sides);
}
-(void)setMinimumNumberOfSides:(int)minimum
{
if (minimum > 2)
minimumNumberOfSides = minimum;
}
-(void)setMaximumNumberOfSides:(int)maximum
{
if (maximum <= 12)
maximumNumberOfSides = maximum;
}
-(id)initWithNumberOfSides:(int)sides minimumNumberOfSides:(int)min maximumNumberOfSides:(int)max
{
if (self = [super init])
{
self.minimumNumberOfSides = min;
self.maximumNumberOfSides = max;
self.numberOfSides = sides;
}
return self;
}
Battez-moi. +1 –