Iphone 进程在UINavigationBar后面

Iphone 进程在UINavigationBar后面,iphone,objective-c,cocoa-touch,uikit,Iphone,Objective C,Cocoa Touch,Uikit,在我的应用程序中,我以320 x 480帧显示全屏图像。显示图像后,我淡出导航栏,让用户看到整个画面。当用户点击导航栏所在的区域时,我想把导航栏带回来 这与iPhone照片应用程序中发生的情况非常相似 不幸的是,在我隐藏了UINavigationBar之后,我无法处理屏幕上导航栏曾经所在的位置。我认为这是因为父视图的原点位于导航栏的正下方: 我如何处理该区域的触摸以恢复导航栏?是否淡出,然后从superview中删除导航栏?如果你只是将它的alpha设置为零,它仍然会捕获你的点击。尝试删除或隐

在我的应用程序中,我以320 x 480帧显示全屏图像。显示图像后,我淡出导航栏,让用户看到整个画面。当用户点击导航栏所在的区域时,我想把导航栏带回来

这与iPhone照片应用程序中发生的情况非常相似

不幸的是,在我隐藏了UINavigationBar之后,我无法处理屏幕上导航栏曾经所在的位置。我认为这是因为父视图的原点位于导航栏的正下方:


我如何处理该区域的触摸以恢复导航栏?

是否淡出,然后从superview中删除导航栏?如果你只是将它的alpha设置为零,它仍然会捕获你的点击。尝试删除或隐藏它。

目前似乎没有一个简单的解决方案。默认的UINavigationBar正在吞噬我的所有事件。我最终在整个应用程序中隐藏了默认的导航栏,并在interface builder中添加了一个虚拟的UINavigationBar


这样做,我丢失了NavigationController附带的默认“后退”按钮,但应用程序现在可以正常运行。

您可以覆盖UIWindow上的
hitTest:withEvent:
。请参见。

如何删除它?我试过setHidden:是的,但那不起作用。我还禁用了用户交互,它通常直接传递事件,但仍然没有骰子。setHidden应该可以做到这一点。您确定没有其他视图,或者您的视图没有正确放置吗?