Выражение не присваивается ошибка с CGRect
Я пытаюсь создать CGRect
имущество.
@property (nonatomic) CGRect myRect;
Затем я установил кадр:
self.myRect = self.frame;
self.myRect.size.height = 10; // Error
Я получаю сообщение об ошибке "Выражение не присваивается". Почему я это понимаю? Я не могу изменить размер CGRect
?
2 ответа
Решение
Сделай это так.
_myRect = self.frame;
_myRect.size.height = 10;
self.myRect.size.height = 10
эквивалентно [ self myRect ].size.height = 10
Вы должны прочитать свойство CGRect, изменить его и записать обратно:
CGRect r = [ self myRect ] ;
// modify r here
[ self setMyRect:r ] ;
или же:
CGRect r = self.myRect ;
// modify r here
self.myRect = r ;