【问题标题】:navigation controller bar is being cut off导航控制器栏被切断
【发布时间】:2013-09-17 15:42:14
【问题描述】:

如果通过选择 status bar style = hide during application launch 隐藏状态栏,我正在自定义导航栏,如下所示

[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed: @"navbar-iphone.png"]
                                       forBarMetrics:UIBarMetricsDefault];

当我得到这个时:导航栏被切断了顶部。

关于这种情况以及如何解决它的任何想法?

【问题讨论】:

  • 你可以试试self.navigationController.navigationBar.translucent = NO;
  • 你试过了吗?它不工作。
  • 你可以试试 self.edgesForExtendedLayout = UIRectEdgeNone;在视图控制器中
  • 可能是你的导航图像 navbar-iphone.png 半透明?你到底是什么 NavBar 图片可以附上问题吗?

标签: ios objective-c uinavigationcontroller ios7


【解决方案1】:

你可以试试这个。

在应用程序启动期间。这里的 viewController 是 UINavigationController。

//set status bar hidden true.
    [[UIApplication sharedApplication]setStatusBarHidden:YES]; 

//You can set navigation bar frame to start from 0.0,0.0
    self.viewController.navigationBar.frame = CGRectOffset(self.viewController.navigationBar.frame, 0.0, -20.0);

//set the image u want.
    [[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed: @"navbar-iphone.png"]
                                       forBarMetrics:UIBarMetricsDefault];

或者

[[UIApplication sharedApplication]setStatusBarHidden:YES]; 
[[UINavigationBar appearance] setBackgroundImage:[UIImage imageNamed: @"navbar-iphone.png"]
                                           forBarMetrics:UIBarMetricsDefault];
[self.viewController setWantsFullScreenLayout:YES];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-17
    • 2020-11-05
    • 1970-01-01
    • 2017-05-14
    • 2020-05-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多