2009-10-12 4 views
2

제 애플리케이션에서 전체 화면 이미지를 320 x 480 프레임으로 표시하고 있습니다. 이미지를 표시 한 후 사용자가 전체 그림을 볼 수 있도록 탐색 막대를 페이드 아웃합니다. 사용자가 내비게이션 막대가있는 영역을 두 드렸을 때, 내비게이션 막대를 다시 가져오고 싶습니다.프로세스가 UINavigationBar 뒤에 닿습니다.

이것은 iPhone 포토 앱에서 발생하는 것과 매우 유사합니다.

불행히도 UINavigationBar를 숨기고 나면 내비게이션 막대가 있던 화면에서 터치를 처리 할 수 ​​없습니다.

Nav Bar http://shortybox.com/navbar.gif

는 어떻게 탐색 모음을 돌아 오게하기 위해이 지역에 접촉을 처리 할 수 ​​있습니다 : 나는 부모 뷰의 기원은 바로 탐색 표시 줄 아래에 있기 때문에 이것이 믿는?

답변

0

현재로서는 쉽게 해결할 수없는 것처럼 보입니다. 기본 UINavigationBar가 내 모든 이벤트를 맴돌고 있습니다. 내 전체 응용 프로그램에서 기본 탐색 모음을 숨기고 인터페이스 작성기에 더미 UINavigationBar를 추가했습니다.

이렇게하면 NavigationController와 함께 제공되는 기본 '뒤로'버튼을 잃어 버렸지 만 이제 앱이 작동합니다.

0

당신은 페이드 아웃하고 슈퍼 뷰에서 막대를 제거하고 있습니까? 알파 값을 0으로 설정하면 클릭 수가 여전히 트랩됩니다. 제거하거나 숨기십시오.

+0

어떻게 제거해야합니까? 나는 setHidden을 시도했다 : 예, 그리고 그것은 작동하지 않는다. 나는 또한 일반적으로 이벤트를 통과하는 사용자 상호 작용을 사용할 수 없도록 설정했으며 주사위는 아직 사용하지 않습니다. –

+0

setHidden이 트릭을해야합니다. 다른보기가 없거나보기가 제대로 배치되지 않았습니까? –

1

UIWindow에서 hitTest:withEvent:을 재정의 할 수 있습니다. this answer을 참조하십시오.