我有3个视图。(比如1、2、3)。我在1号推送了第二个视图(它有一个load视图方法)。在第二个视图中,我使用initWithFrame (继承自UIWebView)创建了第三个视图。在第二个视图中,我编写了self.view=3rd视图。
现在我想在第三个视图中隐藏第二个视图的导航栏(例如,当用户触摸到第三个视图屏幕时,即UIWebView)。我使用手势获得了触摸识别功能,但我无法隐藏导航栏。
第三个视图不支持self.navigationController。如果我在第三个视图中创建第二个视图的对象,它不会隐藏导航栏。有人能帮我吗?
发布于 2011-09-03 02:28:36
好的。因此,您需要在为该选项卡创建导航控制器后立即将导航栏设置为隐藏。在你推入视图控制器之后,你不能再调整它(据我所知)。
如果您希望第一个视图的顶部没有导航栏,则在最初声明导航控制器的appDelegate中使用以下内容:
localNavigationController = [[UINavigationController alloc] initWithRootViewController:theViewController];
[localNavigationController setNavigationBarHidden:YES animated:YES];如果您希望隐藏之后的视图,则需要为后续视图添加一个viewController,并且必须添加
[[self navigationController] setNavigationBarHidden:YES animated:YES];就在你调用这个之前:
[[self navigationController] pushViewController:theThirdViewController animated:YES];希望这能有所帮助。
发布于 2011-07-14 21:12:59
实现这一点:
[self.navigationController setNavigationBarHidden:YES animated:YES];在指定第三个视图之前。即self.view =第3视图
发布于 2018-04-08 00:57:19
请注意,必须将代码添加到viewWillAppear方法中
-(void) viewWillAppear:(BOOL)animated
{
self.navigationController.navigationBar.hidden = YES;
}https://stackoverflow.com/questions/6544966
复制相似问题