2011-07-18 2 views
2

UIToolBar 및 UIBarButton 항목을 만들고 추가하면 도구 모음과 항목을 두 방향으로 모두 올바르게 표시 할 수 있습니다. 당신은 이미지에서 볼 수 있듯이UIToolbar 크기 조정을 사용하면 가로로 이상한 UIBarButtonItem 크기가 발생합니다.

self.toolbar = [[[UIToolbar alloc]initWithFrame:CGRectMake(0, 372, 320, 44)]autorelease]; 
self.toolbar.autoresizingMask = UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight; 

self.deleteButton = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemTrash target:self action:@selector(deleteButtonClicked)] autorelease]; 
self.deleteButton.style = UIBarButtonItemStylePlain; 

UIBarButtonItem *flexibleSpace = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil] autorelease]; 

self.shareButton = [[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAction target:self action:@selector(shareButtonClicked)] autorelease]; 
self.shareButton.style = UIBarButtonItemStylePlain; 
self.navigationItem.leftBarButtonItem = backItem; 

NSArray *toolbarItems = [NSArray arrayWithObjects:self.shareButton,flexibleSpace,self.deleteButton,nil]; 
[self.toolbar setItems:toolbarItems animated:NO]; 

에서, UIBarButtonItems 가로에서 세로로 올바른 보이지만 이상하게 찌그러과 중심 (특히 휴지통 아이콘) OFF : 이것은 내가 지금까지있는 것입니다. 누락 된 분명한 해결책이 있습니까, 아니면이 권리를 얻기 위해 수동 크기 조정을해야합니까?

Landscape Orientation

그것은 여기 미묘한 차이지만,

Portrait Orientation

는 것처럼 보일 것입니다 무엇을 : 당신은 UIToolBar와의 Size inspector 모두에서 Autoresizing 옵션 봐야 What it should look like

+1

* * 모양이 어떻게 보이는지 보여 줄 수 있습니까? – jtbandes

+0

그들은 내게 적합 해 보입니다 ... –

+0

jtbandes : 세 번째 스크린 샷으로 업데이트되었습니다. –

답변

0

적어도 iOS 5까지는 자신 만의 도구 모음 대신 UINavigationController의 내장 도구 모음을 사용하는 것이 좋습니다. 도구 모음에 내장 된 도구가 올바르게 자동으로 크기가 조정됩니다.

0

버튼. UIToolBar에도 체크 표시를 설정하면 Autoresize subviews이 선택 취소되어 버튼에 영향을 미치지 않습니다.

관련 문제