1

뷰의 맨 아래에 UIToolbar가 있습니다. 사용자가 iPad에있을 때 네비게이션 컨트롤러의 오른쪽에 툴바를 추가하고 싶습니다.UIToolbar를 UINavigationItem 오류로 추가하십시오.

- (void)viewDidLoad{ 
    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) { 
      UIBarButtonItem *toolBarItem = [[UIBarButtonItem alloc]initWithCustomView:toolBar]; 
      self.navigationItem.rightBarButtonItem = toolBarItem; 
     } 
[super viewDidLoad]; 
    } 

그러나 오류가있는 응용 프로그램이 충돌 :

는이 코드를 추가

Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Auto Layout still required after executing -layoutSubviews. UINavigationBar's implementation of -layoutSubviews needs to call super.' 

이 문제가 왜 이전에 사용이 방법을 볼 수 있기 때문에 내가 모르는 . 그건 그렇고, 툴바 항목은 NSArray 버튼을 사용하는 대신 인터페이스 빌더에 추가됩니다, 그 차이를 만들 수 있을까요?

감사합니다.

+0

일반적으로 UIBarButtonItem은 어디에서 선언합니까? – Dustin

+0

plz는 toolBar alloc 및 init 코드를 보여줍니다. –

+0

그리고 [super viewDidLoad]가 있습니까? viewDidLoad 메서드에서? –

답변

0

UIBarButtonItem은 도구 모음 안에있는 컨트롤 중 하나입니다. 당신이하고있는 일을 확신합니까? 내가 말하는 것을 따라갈 수는 없지만 UIBarButtonItem 내부에 툴바를 추가하려고하는 것처럼 보입니다. 다른 방법으로 사용하기로되어 있습니다. UIbarButtonItem은 UIToolbar 내부에 있습니다.

+0

UIToolbar에는 여러 UIBarButtonItem이 포함되어 있지만 탐색 모음에 추가 할 수 있도록 다른 UIBarButtonItem 안에 UIToolbar를 넣으려고합니다. 나는 쉬운 방법이 있다고 생각하지 않았다. –

+0

더 쉬운 방법은 임의로 프레임을 설정할 수있는 사용자 지정 UIView 컨트롤을 만드는 것입니다. 당신이하려는 것은 UIToolbar Inception입니다! – Justin

관련 문제