【问题标题】:How to set UINavigationBar in iOS7? [duplicate]如何在 iOS7 中设置 UINavigationBar? [复制]
【发布时间】:2013-10-28 07:52:44
【问题描述】:

我在 iOS6 中制作了应用程序。当我在 iOS7 上运行时,它显示是

我试过这段代码,但没有用。

[[UINavigationBar appearance] setShadowImage:[[UIImage alloc] init]];

nav.navigationBar.translucent = NO;

我该怎么办。我的xib是这样的

【问题讨论】:

标签: ios iphone uinavigationcontroller ios7 uinavigationbar


【解决方案1】:

在您的 viewDidLoad 中添加这些代码行

if ([self respondsToSelector:@selector(setNeedsStatusBarAppearanceUpdate)])
{
    // iOS 7
    [self prefersStatusBarHidden];
    [self performSelector:@selector(setNeedsStatusBarAppearanceUpdate)];
}
else
{
    // iOS 6
    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];
}

并定义这个方法

- (BOOL)prefersStatusBarHidden
{
    return YES;
}

这对我有用.. 祝你好运.. :-)

【讨论】:

  • 它不起作用,亲爱的。
  • 等一下 .. 让我检查一下设备。因为它在模拟器中完美运行
  • 亲爱的我也在做模拟器。
【解决方案2】:

在您的 viewDidLoad 方法中添加这两行

    if ([self respondsToSelector:@selector(edgesForExtendedLayout)])
        self.edgesForExtendedLayout=UIRectEdgeNone;
    if ([self respondsToSelector:@selector(automaticallyAdjustsScrollViewInsets)])
        self.automaticallyAdjustsScrollViewInsets=NO;

希望这会对你有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-14
    • 2013-06-07
    • 2014-08-09
    • 1970-01-01
    • 2013-10-05
    • 2013-09-28
    • 2011-01-12
    • 1970-01-01
    相关资源
    最近更新 更多