如何添加子视图以覆盖 UINavigation barin UIViewController?
Posted
技术标签:
【中文标题】如何添加子视图以覆盖 UINavigation barin UIViewController?【英文标题】:How to add a subview to cover UINavigation barin UIViewController? 【发布时间】:2016-05-04 05:24:11 【问题描述】:您好,我想在当前视图控制器的顶部添加一个UIView
。所以我确实喜欢这个。
- (void)viewDidLayoutSubviews
UIView *vwOverlay=[[UIView alloc] initWithFrame:self.view.frame];
[vwOverlay setBackgroundColor:[UIColor blackColor]];
[vwOverlay setAlpha:0.5];
[self.view addSubview:vwOverlay];
但这是添加我的视图顶部但在我的导航栏后面。仍然可以清楚地看到导航栏标题和导航菜单项,也可以单击导航栏项。但是我也想从我的新视图中覆盖这个导航栏。 我怎样才能做到这一点?请帮我。 谢谢
【问题讨论】:
我找到了答案here。将它添加到窗口解决了我的问题。 Add a UIView above all, even the navigation bar的可能重复 【参考方案1】:使用此代码
UIWindow *window = [[UIApplication sharedApplication] keyWindow];
CGSize screenBounds = [UIScreen mainScreen].bounds;
UIView *vwOverlay=[[UIView alloc] initWithFrame: screenBounds];
[vwOverlay setBackgroundColor:[UIColor blackColor]];
[vwOverlay setAlpha:0.5];
[window addSubview:vwOverlay];
【讨论】:
以上是关于如何添加子视图以覆盖 UINavigation barin UIViewController?的主要内容,如果未能解决你的问题,请参考以下文章
UINavigation 控制器 UIViewController 和 UItoolbar 作为子视图问题
应该如何创建 UINavigation 工具栏子视图项 Interface Builder?