iPhone
IB에서 각 UIControlState 에서의 UIButton 의 이미지 설정
Min-gu, Kim
2010. 8. 13. 11:21
간단한 Tip 입니다.
UIButton 을 이미지로 대체 하시는 경우 UIControlState 각 상태별 이미지를 따로 셋팅하시려 할 때,
1. 코드
[buttonObj setImage:<#(UIImage *)image#> forState:<#(UIControlState)state#>];
위에서 처럼, 버튼 객체의 setImage 메소드를 실행하시면 됩니다. 메소드는 두개의 파라미터 UIImage 와 UIControlState 를 인자로 넘겨주면 됩니다.
// 기본 상태에서의 Image 설정
[buttonObj setImage:[UIImage imageNamed:@"image.png"]
forState:UIControlStateNormal];
// 하이라이트 상태에서의 Image 설정
[buttonObj setImage:[UIImage imageNamed:@"image.png"]
forState:UIControlStateHighlighted];
// 사용 불가능 상태에서의 Image 설정
[buttonObj setImage:[UIImage imageNamed:@"image.png"]
forState:UIControlStateDisabled];
// 선택 된 상태에서의 Image 설정
[buttonObj setImage:[UIImage imageNamed:@"image.png"]
forState:UIControlStateSelected];
2. IB(Interface Builder)
IB 에서는 UIButton 을 선택 하신 후, Attribute 창을 보시면, Button Attribute 창에 Default State Configuration 이 선택 된 콤보박스가 있습니다.
콤보 박스를 선택 하시면, 각 UIControlState 별 설정을 변경 하실 수 있습니다. 이때, Image 값에 각 상태별 이미지 명을 입력하시면 되겠죠 :)