2012-10-09 2 views
5

내 iPad 앱 (iOS 5.1) 상단의 UIToolbar에 UIBarButtonItem이 있습니다. Interface Builder에서 너비를 65로 설정했습니다. '테두리가있는'스타일이고 '사용자 정의'식별자입니다. 텍스트 레이블과 색조의 변화는 때를 누르면 :커스텀 애트리뷰트로 UIBarButtonItem의 크기가 변하지 않도록하는 방법

[btnA setTitle:@"State A"]; 
    [btnA setTintColor:[UIColor STATE_A_COL]; 

등등, 다양한 레이블과 색상을 복용. 다양한 상태의 제목이 상당히 다른데도 버튼이 크기가 조정되지 않았으므로 문제가 없습니다.

I 다음 시동에서의 폰트를 설정하는 코드가 추가

UIFont * futura = [UIFont fontWithName:@"Futura" size:13]; 
NSDictionary *attributes = [NSDictionary dictionaryWithObject:futura 
                 forKey:UITextAttributeFont]; 
[btnA setTitleTextAttributes:attributes forState:UIControlStateNormal]; 

이제 버튼은 시작에있는 타이틀의 폭에 맞게 크기가된다. 제목이 변경되면 크기가 변경됩니다. 크기를 잠글 수있는 방법은 무엇입니까? 나는 여기서 상호 작용을 이해하지 못한다; 나는 내가했던 모든 작업이 버튼 글꼴에 대한 속성이 아니라 제목 글꼴 속성을 변경한다고 생각했습니다. 아무 소용이 다시

[btnA setWidth:65.0]; 

:

는 또한 명시 적으로 width 속성을 설정 시도했다.

답변

6

원하는 최대 너비에 대한 힌트를 제공하기 위해 possibleTitles 속성을 사용하여 UIBarButtonItem의 크기를 조정하지 못하게했습니다.

[btnA setPossibleTitles:[NSSet setWithObjects:@"State A', @"B", @"Final state", nil]]; 

는이 일을하지만 명시 적으로 내가 원하는 크기로 폭을 설정할 수 없습니다, 그래서 열린 질문을 떠날거야.

+0

팀, 원하는 크기는 무엇입니까? – Carl

관련 문제