2012-01-27 2 views
0
문서에서

무시 UIBarButtonItems에 대한 customViews는, 나는 backBarButtonItem이 참조 :이 속성이 전무 경우leftBarButtonItem

, 네비게이션 품목이 제목 값을 사용합니다 (10 페이지) 재산을 적절한 뒤로 버튼을 만듭니다. 다시 버튼의 맞춤 이미지 또는 제목을 지정하려는 경우 맞춤 바 버튼 항목 (맞춤 제목 또는 이미지 포함)을이 속성 대신 에 할당 할 수 있습니다. 바 버튼 항목을 구성 할 때 에 사용자 정의보기를 지정하지 마십시오. 탐색 항목은 뒤로 막대 단추에있는 사용자 정의보기 을 무시합니다.

이것이 leftBarButtonItem에 대해 동일한 지 알 수 없었습니다. 기본적으로이 코드가 있습니다

가에서 iOS 5에
UIButton *homeButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 44, 44)]; 
UIImage *homeImage = [UIImage imageNamed:@"icon_house.png"]; 
[homeButton setImage:homeImage forState:UIControlStateNormal]; 
[homeButton addTarget:self action:@selector(homePressed:) forControlEvents:UIControlEventTouchUpInside]; 
UIBarButtonItem *homeBBI = [[UIBarButtonItem alloc] initWithCustomView:homeButton]; 

전에, 나는이 UIToolBar에 넣고을하고 그것을 잘을 보여 주었다. 이제 UINavigationController의 backButton 오른쪽에 leftBarButtonItem으로 넣을 것입니다. 내가 그것을 설정할 때, 그것은 전혀 나타나지 않는다. 이미지가 없습니다. 그러나 다음과 같은 버튼을 만들면 :

UIBarButtonItem *hButton = [[UIBarButtonItem alloc] initWithTitle:@"home" style:UIBarButtonItemStylePlain target:self action:@selector(homePressed:)]; 

그리고 이것을 leftBarButtonItem으로 설정하면 나타납니다. 국경없는 집 버튼에 내 맞춤 아이콘을 어떻게 얻을 수 있는지 알지 못했습니다. 내가 사용할 때 :

UIBarButtonItem *hButton2 = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"icon_house.png"] style:UIBarButtonItemStylePlain target:self action:@selector(homePressed:)]; 

내 house_icon 주위에 테두리가 생기고 싶지 않다. 감사.

답변

2

UIButton *TastoVersamento = [UIButton buttonWithType:UIButtonTypeCustom]; 
     [TastoVersamento setImage:[UIImage imageNamed:@"Versamento.png"] forState:UIControlStateNormal]; 
     [TastoVersamento addTarget:self action:@selector(Click_Versamento:) forControlEvents:UIControlEventTouchUpInside]; 
     [TastoVersamento setFrame:CGRectMake(0, 0, 40, 40)]; 
     [[self navigationItem] setLeftBarButtonItem:[[[UIBarButtonItem alloc] initWithCustomView:TastoVersamento] autorelease]]; 
0

backBarButtonItemleftBarButtonItem은 다르다. leftBarButtonItem이 지정되지 않은 경우 backBarButtonItem이 기본값입니다. leftBarButtonItem이 설정 되더라도 leftItemsSupplementBackButtonYES 인 경우에도 표시됩니다.

첫 번째 예에서는 [homeButton sizeToFit]을 시도 할 수 있습니다. 프레임이 올바르게 설정되지 않았을 수도 있습니다.

마지막 댓글에 대해 으로 생각하면 탐색 항목 버튼에서 테두리를 제거하는 데 성공하지 못할 것입니다. 나는 그들이 하드 코딩되어 있다고 확신한다. 실제로 테두리가있는 단추를 추가하면 단추에서 하나를, 탐색 항목에서 단추 하나를 얻게됩니다.

+0

의 CRUD보십시오. 프레임을 미리 설정해 두었다 ... 어떤 경우이든, 두 번째 예제가 원하는 것 같다 :'initWithImage'. (버튼 안의 버튼은 이상합니다.)'initWithImage'는 내가하는 일입니다. 그리고 제가 말했듯이, 당신이 국경을 제거 할 수있을 것이라고 나는 믿지 않습니다. – smparkes

관련 문제