2

self.navigationController.navigationBar.userInteractionEnabled = NO; 아이폰 OS 7에서 작동하지 않는 viewDidLoad:viewWillAppear: 방법에서 작동하지 않습니다. 즉, 여전히 navigationBar의 버튼을 사용할 수 있습니다. iOS 6에서 모든 것이 잘 작동하고있었습니다.userInteractionEnabled는</p> <p>

iOS 7의 UINavigationBar에서 사용자 상호 작용을 어떻게 해제 할 수 있습니까?

업데이트 :주의

하나 이상한 것은, self.navigationController.navigationBar.userInteractionEnabled = NO이 RootviewController의 viewDidLoad 또는 viewWillAppear 아니라 탐색 스택의 다른 컨트롤러와 함께 잘 작동 보인다.

+0

self.navigationController.navigationBar.userInteractionEnabled = NO 수있다; viewDidLoad : – Amitabha

답변

1

Xcode 5(5A1314)iOS 7을 사용하면이 코드 줄은 탐색 모음과의 사용자 상호 작용을 활성화 및 비활성화하는 데 적합합니다.

self.navigationController.navigationBar.userInteractionEnabled = YES; 
// No for Disable and YES for enable. 

또는 당신은 당신은 CleanRun처럼 빈 캐시 및 청소 모든 대상을 시도 할 수있는 또 다른 방법

[self.navigationController.navigationBar setUserInteractionEnabled:NO]; 
// No for Disable and YES for enable. 

같은 시도 할 수 있습니다. 시뮬레이터를 재설정 할 수 있습니다.

+0

에서 제대로 작동하지 않습니다. viewDidLoad : 및 viewWillAppear :에서 작동하지 않습니다. – Ashu

+0

하지만 내 편에서는 문제가있을 수 있습니다. 프로젝트를 다운로드 할 수있는 링크가있어서 도움이됩니다. – Buntylm

+0

navigationController의 RootViewController에서 올바르게 작동합니다. 탐색에 다른 컨트롤러를 사용해보십시오. – Ashu

0

당신은 다른 접근 방법을 시도하고 버튼을 비활성화 직접

[self.navigationItem.rightBarButtonItem setEnabled:NO]; 
[self.navigationItem.leftBarButtonItem setEnabled:NO]; 
+0

전혀 작동하지 않습니다. – Ashu

+0

UINavigationController에 대한 액세스 권한이 있는지 확인할 수 있습니까? '''NSLog (@ "% @", self.navigationController)''' – mmackh

+0

예. navigationController 및 navigationBar에 액세스 할 수 있습니다. 이상한 점은 navigationController의 RootViewController에서 모든 것이 제대로 작동하는 것입니다. – Ashu