Sto cercando di verificare se un CGRect
è null
nel mio getter proprietà e se lo è, caricare un valore per impostazione predefinita, tuttavia, nel mio metodo init, quando uso la proprietà, restituisce zero per tutti i valori.Controllare se CGRect null in getter
Qui è la mia getter:
- (CGRect)frame
{
if(CGRectIsNull(_frame))
_frame = CGRectMake(0,0,60,60);
return _frame;
}
- (id)init
{
self = [super initWithFrame:self.frame];
if(self)
{
//do something
}
return self;
}
Non sono sicuro di quello che sta succedendo e dove cercare. Ogni aiuto è molto apprezzato.
'CGRectIsEmpty' è il modo migliore per andare qui, ma penso che sia vale la pena menzionare che si potrebbe anche usare 'CGRectEqualToRect' e confrontare con' CGRectZero' –
True ma l'uso di 'CGRectIsEmpty (_frame)' è più corto di 'CGRectEqualToRect (_frame, CGRectZero)'. – rmaddy
Lo è, e CGRectIsEmpty sarebbe anche la mia preferenza, solo indicandolo :) –