2012-01-17 4 views
1

나는 히트 때마다 내 UIView의 배경 이미지를 변경하는 버튼을 만들려고합니다. 기본적으로 나는 "Change BG"를 누를 때마다 옆에 순환하고 싶은 배열에 3 개의 이미지를 가지고 있습니다.현재 bg 이미지에 액세스하는 방법은 무엇입니까?

현재 내 bg를 설정하려면 내 viewDidLoad에 self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_image.png"]];을 사용하고 있습니다.

"BG 변경"버튼을 누르면 현재 BG가 무엇으로 설정되어 있는지 알 수 있습니까? if 문을 다음과 같이 사용하여 시도했습니다.

if(self.view.backgroundColor == [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_image.png"]]) 

그러나 작동하지 않는 것 같습니다. 나는 또한 로컬 변수 UIColor * bg = self.view.backgroundColor를 만든 다음 그 값을 bg == [UIColor colorWithPatternImage:[UIImage imageNamed:@"bg_image.png"]];으로 비교하려고 시도했지만 그 중 하나도 작동하지 않습니다.

모든 아이디어를 얻을 수 있습니다. 감사합니다

답변

1

태그를 사용하면 어떨까요?

#define FirstTag 1 
#define SecondTag 2 
#define ThirdTag 3 

첫 번째 bg 이미지를 변경할 때. 세트 self.view.tag = FirstTag 등등. 버튼을 누르면

, 바로 태그 if (self.view.tag == FirstTag)을 알아 내기 ...

2

나는 당신이 재산에 현재 배경 이미지의 정보를 저장하는 것이 좋습니다. (UIImage, NSString 또는 그냥 태그), 나중에 버튼을 눌렀을 때 현재의 bg 이미지를 알 수 있습니다.

Bonny의 대답은 올바르게 작동하지만 나는 그렇게하는 것을 권장하지 않습니다.

+0

@xhan의 경우와 같습니다. 사용 속성은 좋은 생각입니다. – Bonny

관련 문제