2011-01-04 4 views
0

나는 조금 잃어 버렸어. BalloonGuy라는 UIView에서 서브 클래 싱 된 클래스가 있습니다. 나는 이것을 이렇게 초기화한다.initWithFrame을 사용하여 UIView를 만든 후 이미지를 어떻게 변경합니까?

- (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; 

}

나는 하위 뷰로 추가하고 모든 중대하다.

그러나 내가 할 수없는 것은 나중에 이미지를 변경하는 것입니다. 실패한 시도를 나열하지 않지만 무엇을 합니까?

+0

내가 어떤 코드가 표시되지 않는 경우 이미지 보기에 추가됩니다. – Joe

답변

1

나는 당신이 그렇게 좋은 생각이 될 수있다이 경우 속성 setter를 무시하는, image 속성을 변경할 때보기를 다시 그리기해야합니다 생각 :

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

완벽하게 작동했습니다! 고맙습니다! –

관련 문제