当模态对话框存在时,如何(暂时)在我的视图中禁用导航?
Posted
技术标签:
【中文标题】当模态对话框存在时,如何(暂时)在我的视图中禁用导航?【英文标题】:How do I (temporarily) disable Navigation in my view when modal dialog exists? 【发布时间】:2010-03-05 05:51:14 【问题描述】:我有一个标准的 UITableView,顶部有一个 UINavigation 栏和标准的后退按钮等。
我有一个弹出“模态对话框”框的按钮,这是一个位于顶部的视图,几乎遮住(但不完全)下面的视图。问题是,按钮(包括“返回”导航按钮)仍然可见,因此可以触摸。
我在 UITableViewController 的view
上尝试过setUserInteractionEnabled:NO
,但这似乎不起作用——至少导航项仍然是可触摸的。但 navigationItem 不是视图子类。
还有其他想法吗?遗漏了一些明显的东西?
谢谢。
【问题讨论】:
【参考方案1】:在类似的情况下遇到了同样的问题: iPhone: how do I set up a clear window-size "blocker view"?
使用吞下事件的透明视图解决了这个问题,它坐在整个窗口中。感觉很笨拙但很管用。
【讨论】:
【参考方案2】:试试这样的:
[[[tableViewController navigationItem] leftBarButton] setEnabled:NO];
【讨论】:
奇怪的是,没有。这个[[[self navigationItem] backBarButtonItem] setEnabled:NO];
似乎没有效果。【参考方案3】:
我遇到了类似的问题并使用以下隐藏导航栏:
[self.navigationController setNavigationBarHidden: YES animated:YES];
【讨论】:
以上是关于当模态对话框存在时,如何(暂时)在我的视图中禁用导航?的主要内容,如果未能解决你的问题,请参考以下文章