2011-01-04 4 views
0

Я немного потерялся здесь. У меня есть класс подкласса из UIView, называемый BalloonGuy. Я инициализирую его так.После создания UIView с initWithFrame, как мне изменить изображение?

- (id)initWithFrame:(CGRect)frame { 

UIImage* loadedImage = [UIImage imageNamed:@"balloonguy.png"]; 

CGRect rect = CGRectMake(0, 0, loadedImage.size.width, loadedImage.size.height); 

self = [super initWithFrame:rect]; 
image=[loadedImage retain]; 

self.opaque = YES; 
self.backgroundColor = [UIColor clearColor]; 

return self; 

}

добавить его как подвид и все замечательно.

Что я не могу сделать, однако, это изменение изображения впоследствии, когда-либо. Я не буду перечислять свои неудачные попытки, но что do Я делаю?

+0

Я не вижу какой-либо код, где изображение добавляется к представлению. – Joe

ответ

1

Я думаю, что вам нужно перерисовывать ваш взгляд, когда вы измените свое image свойство, поэтому перекрывая сеттер свойства в этом случае может быть хорошей идеей:

- (void) setImage:(UIImage *) im { 
    [image release]; 
    image = nil; 
    image = [im retain]; 
    [self setNeedsLayout]; 
} 
+0

Это сработало отлично! Спасибо! –

Смежные вопросы