2011-09-22 4 views
0

오른쪽에 setImage 아이콘이 있고 왼쪽에 setTitle이있는 표 셀의 길이에 걸쳐 큰 버튼이 있어야합니다. 그러나 기본적으로 모든 것은 왼쪽에 맞춰집니다.UIButton의 setImage 및 setTitle의 위치 설정

UIButton 이미지와 제목보기의 위치를 ​​변경하는 방법이 있습니까? 나는 누군가가 제목을 클릭하면 그 아이콘도 상태를 바꿀 수 있도록 모든 것을 하나의 버튼으로 원한다.

답변

0

내가 한 것은 UIButton을 서브 클래스 화하고 layoutSubview 메소드에서 [self titleLabel] 및 [self imageView]를 설정 한 것입니다.

#import "CustomDetailTableButton.h" 


@implementation CustomDetailTableButton 



- (void)layoutSubviews 
{ 
    [super layoutSubviews]; 

    UILabel *titleLabel = [self titleLabel]; 
    CGRect fr = [titleLabel frame]; 
    fr.origin.x = 10.0; 
    fr.origin.y = 5.0; 
    [[self titleLabel] setFrame:fr]; 

    UIImageView *imageView = [self imageView]; 
    CGRect iFrame = [imageView frame]; 
    iFrame.origin.x = 300.0; 
    iFrame.origin.y = 7.0; 
    [[self imageView] setFrame:iFrame]; 
} 

@end 
0

이미지를 버튼과 동일한 크기로 만듭니다 (즉, 투명 필름으로 패딩). 원하는대로 사물을 이동하십시오. 40 x 40 크기의 이미지가 있다고 가정 해 보겠습니다. 300 x 40 버튼의 오른쪽에 이미지를 표시하고 싶습니다. 투명도가있는 이미지의 크기를 늘려 왼쪽에 아무 것도없는 260 픽셀을 갖도록하십시오. 텍스트의 경우 인터페이스 빌더의 정렬 아이콘을 사용하여 원하는 위치에 제목을 넣을 수 있습니다.

+0

서브 클래 싱을 시도했는데 원하는 위치로 titleLabel을 이동할 수 있었지만 setImage를 알 수 없습니다. 네 방법이 가장 쉽다고 생각해. – Adam

+0

나는 그것이 작동하지 않을 것이라고 생각하지 않는다. 어떤 이유로 든 내 이미지가 텍스트를 덮고 있습니다. – Adam

+0

배경 이미지로 만드십시오. –