2013-04-18 4 views
3

Container View 컨트롤을 사용하여 인터페이스 빌더를 통해 UINavigationController 및 스택을 내 응용 프로그램에 포함 시켰습니다.Embedded UINavigationController의 뒤로 버튼이 작동하지 않습니다.

내가 가지고있는 문제는 루트 VC를 통해 모든 밀어 넣은 VC에서 뒤로 단추가 작동하지 않는다는 것입니다.

이 푸시 된 VC에서 자동으로 생성 된 뒤로 버튼을 누르면 아무 일도 일어나지 않습니다.

편집 : 기록에는 코드가

없습니다. 그 모든 것은 지금 IB에서 설정됩니다. UInavigation 컨트롤러로 설정 임베디드 뷰 컨트롤러와

enter image description here

당신이 볼 수 있듯이 ... 컨테이너보기. 왼쪽에있는 공백은 결국 스 와이프 가능한 메뉴가 될 것입니다 - 설정 이유입니다. 그런 다음 두 번째보기 컨트롤러와 교차하는 루트 RV의 다음 버튼이 있습니다.

enter image description here

상태 위에서 도시된다. 뒤로 버튼 (테스트라고 표시된)을 누르면 아무런 반응이 없습니다. 일반적으로 상위보기 컨트롤러가 나타나서 '테스트'로 돌아갑니다. 분명히 임베딩은 어떻게 든 일반 UINavigiationController 함수를 방해합니다.

나는 어떻게하는지 잘 모릅니다.

또 다른 편집 :

그 위에보기 컨트롤러에서 사용자 정의 버튼을 만들기 수동으로 실제로 작동하고 상위 뷰 컨트롤러 스택에서 제거

[self.navigationController popViewControllerAnimated:true]; 

를 호출.

다시 버튼이 작동하지 않는 이유는 무엇입니까?

+0

코드를 표시하십시오. –

+0

코드가 없으며 모두 IB입니다. 스크린 샷을 추가했습니다. – Vazzyb

+0

질문에 표시되는 것과 동일한 설정을했는데 뒤로 버튼이 제대로 작동했습니다. 프로젝트를 정리하거나 Xcode를 닫았다가 다시 열거 나 새 프로젝트를 만들고 작동하는지보십시오. – rdelmar

답변

9

내 탐색 표시 줄에 탭 제스처 인식기를 추가 한 것을 잊어 버렸을 때 비슷한 문제가있었습니다. 실제 뒤로받은 버튼은 (푸시 된 상태) 만지지 만 예제에서는 아무 것도하지 않았습니다. 네비게이션 바의 커스텀 버튼은 작동했습니다. 제스처 인식기를 제거하면 뒤로 버튼이 다시 작동했습니다.

컨테이너보기의 일부 다른보기/제스처 인식자가 어쩌면 터치를 잡는 중일 것입니다 ...

+1

의견을 보내 주셔서 감사합니다. 당신은 절대적으로 옳습니다. 탭 제스처 인식기를 제거하면 뒤로 버튼을 사용할 수 있습니다. 유일하게 남아있는 문제는 탐색 표시 줄에서만 돌아 간다는 것입니다 (즉, 이전 탐색 항목을로드합니다). 그러나 가장 많은보기 컨트롤러를 팝하지는 않습니다! 제스처 인식기를 제거한 후에는 제대로 작동 했나요? – Vazzyb

+0

예 ...첫 번째보기 컨트롤러에서 navigationBar에 탭을 추가하고 다음 VC BackButton이 작동하지 않습니다. 당신의 대답은 Thx : –

+0

tapGesture.cancelsTouchesInView = false를 시도 했습니까? –

관련 문제