2011-08-31 4 views
4

내비게이션 막대 뒤로 버튼을 만들려고했습니다.iOS -보기 컨트롤러에서 탐색 메뉴 항목을 만드는 방법은 무엇입니까?

여기 내 코드입니다 : -

UIBarButtonItem *barButton = [[[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStyleBordered target:self action:nil]autorelease]; 
self.navigationItem.rightBarButtonItem = barButton; 

그러나 탐색 모음에 아무것도 표시되지 않습니다.

UINavigationController가 아닌 UIViewController를 사용하고 있습니다.

이 작업을 수행하는 유일한 방법은 UINavigationController입니까?

도움이 될 것입니다.

좋은 자습서에 대한 링크는 훌륭합니다.

감사합니다.

+0

당신은 모달 뷰 컨트롤러를 만들려고하고 있는가? –

+0

안녕하세요 varundroid 나는 똑같은 문제에 직면하고 있습니다 .. 어떻게이 문제를 해결 했습니까? 가능한 경우 제발 – GoCrazy

답변

5

내비게이션 컨트롤러가있는 viewcontroller (예 : viewController.navigationController! = nil)가 없으면이 방식으로 추가 할 수 없습니다.

당신이 할 수있는 한 가지는 네비게이션 바에 바 버튼 항목을 드래그하여 IBAction을 통해 링크하는 것입니다.

+1

나는 그것을 시도했지만 그것을 버릴 수 없었다. 나는 그것을 끌었고 NavigationBar에 놓으면 마자 사라지지만 내 자리 표시 자에서 볼 수 있습니다. 이 모든 것이 정말로 혼란 스럽습니다. 내 견해로 볼 수는 없지만 자리 표시자를 확인하면 바로 거기에 표시됩니다. – Varundroid

+2

화살표 모양의 뒤로 단추를 추가하려는 경우 http : // stackoverflow에서 도움말을 찾을 수 있습니다.com/questions/227078/Creating-a-left-arrow-button-like-uinavigationbars-back-style-on-a-utoolbar – Kaiser

+0

멋진데. 링크 맨에게 감사드립니다. 그것을 시도하게하십시오. 건배 :) – Varundroid

3

인터페이스 작성기의 NIB 파일에서보기 컨트롤러를 만들고보기 컨트롤러의 디자인 화면에 탐색 막대가있는 경우 가장 쉬운 방법은 개체에서 막대 단추 항목을 드래그하는 것입니다 인스펙터 오른쪽 탐색 바의 오른쪽에. 그런 다음 헤더와 구현에 IBAction을 만듭니다.

+0

제게 해주었습니다. 그러나 NavigationBar에 rect bar 버튼을 추가 할 것입니다. 네비게이션 항목. 어떤 생각을하는 방법? – Varundroid

0

UIViewController의 -navigationItem 메서드는 UINavigationController 또는 다른 UIViewController 포함과 함께 작동합니다. UINavigationBar에 액세스하고 항목을 직접 설정해야합니다.

5

은 내가 nvigationcontroller에서이보기 컨트롤러를 밀어 권하고 싶습니다 - 당신은 무료로 모든 것을 얻을 것이다 :

UIViewController *vc = [[UIViewController alloc] initWithNibName:nil bundle:nil]; 
UINavigationController *navCntrl1 = [[UINavigationController alloc] initWithRootViewController:vc]; 
+0

고마워, 나는 항상 쉬운 방법이 있지만 지금은 IOS 개발을 배우고 있고 또한 어려운 방법을 배우고 싶습니다 tony 알아. 나는 iPhone SDK가 실제로 어떻게 작동하는지 알고 싶어하지 않습니다. ;) – Varundroid

+0

이것은 쉬운 방법이 아닙니다. 내 마음 속에서보다 견고한 방법입니다. 네가보기를 nav 컨트롤러로 설정하고 필요한 모든 것을 얻을 수 있기 때문입니다. 행운을 빕니다! – TommyG

+0

고마워요. 나는 그걸 몰랐습니다. 나는 지식의 모든 조각이 나를 위해 중요하기 때문에 나는 초보자이기 때문에 그것을 내 마음 속에 간직 할 것이다. – Varundroid

0

을 당신이 탐색 모음을 갖고 싶어, 당신이 예상대로 작동하는 경우, UIViewController를 루트 뷰 컨트롤러로 사용하여 UINavigationController를 만듭니다. UIViewController를 사용하고있는 곳의 UINavigationController를 사용하십시오.

자세한 내용은 developer.apple.com에서 UINavigationController을 확인하십시오.

1

나는 이것이 UINavigationBar에서 직접 버튼을 삽입 달성 :

[yourUINavBar insertSubview:yourButton atIndex:1]; 
관련 문제