2011-01-31 5 views
0

인사말, 배경 색조를 설정할 수 있도록 이미지로 컨트롤을 사용하고 있습니다. 어떻게UISegmentedControl 내의 이미지에 대한 이미지 인세 트를 만드는 방법은 무엇입니까?

 
UISegmentedControl *myCustomButton = [[UISegmentedControl alloc] initWithItems: 
        [NSArray arrayWithObjects:[UIImage imageNamed:@"spiral"],nil]]; 

    [myCustomButton setSegmentedControlStyle:UISegmentedControlStyleBar]; 
    [myCustomButton setTintColor:[UIColor blackColor]]; 

UIBarButtonItem *segmentBarItem = [[UIBarButtonItem alloc] 
            initWithCustomView:myCustomButton]; 
self.navigationItem.rightBarButtonItem = segmentBarItem; 

문제는 버튼 내 이미지가 그것을 할 수 모든 방법을 뻗어 가져옵니다, 그래서 이미지 세트을 사용하고자하는 하지만이는있는 viewDidLoad에서 코드를 통해 탐색 모음에 추가 나는 그 코드를 호출한다.

나는 이것을 시도했다 : [self.navigationItem.rightBarButtonItem setImageInsets:UIEdgeInsetsMake(5, 5, 5, 5)]; 하지만 아무것도 보이지 않는다.

+0

세그먼트 텍스트의 왼쪽과 오른쪽에 공백을 추가하면 잘 작동하는 것으로 나타났습니다. – titaniumdecoy

답변

2

쉽게 프로그래밍 방식으로이 작업을 수행 할 수 있는지 확실하지 않습니다. 내가 한 것은 Photoshop (또는 이미지 편집기)에서 투명한 배경을 가진 PNG 이미지를 만들고 이미지를 버튼에 수직으로 맞추고 버튼에 거의 맞는 크기를 갖도록 적합하게 만드는 것입니다. 이미지를 만드는 것은 약간의 작업이지만 일반적으로 화면 레이아웃을 설정 한 후에는 버튼 크기를 변경하지 않을 것입니다.

관련 문제