相关疑难解决方法(0)

iOS 7 - 状态栏与视图重叠

我有一个ViewController在里面UINavigationcontroller,但导航栏是隐藏的.当我在iOS 7上运行应用程序时,状态栏显示在我的视图之上.有办法避免这种情况吗?

我不想编写任何特定于操作系统的代码.

在此输入图像描述

我试着设置View controller-based status bar appearanceNO,但它并没有解决这个问题.

statusbar ios ios7

109
推荐指数
5
解决办法
11万
查看次数

IOS7中的状态栏和导航栏问题

我正在将我的应用程序迁移到iOS 7.为了处理状态栏问题,我添加了此代码

if([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0f)
{
    CGRect frame = self.navigationController.view.frame;
    if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone)
    {
        frame.origin.y = 20;
    }
    else
    {
        frame.origin.x = 20;
    }
    [self.navigationController.view setFrame:frame];
}
Run Code Online (Sandbox Code Playgroud)

这在正常情况下工作正常.如果我正在更改方向(应用程序仅支持横向方向)或呈现任何视图控制器并关闭模型视图控制器,我的视图控制器对齐方式已更改.状态栏再次与我的视图控制器重叠.这段代码根本不起作用.请指导我修复此状态栏问题.

案例2:这就是我呈现视图控制器的方式

ZBarReaderViewController *reader = [ZBarReaderViewController new];
reader.readerDelegate = self;

if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
    reader.supportedOrientationsMask = ZBarOrientationMaskLandscape;
else
    reader.supportedOrientationsMask = ZBarOrientationMaskPortrait;

    [self presentModalViewController:reader animated:YES];
Run Code Online (Sandbox Code Playgroud)

参考:

在此输入图像描述

提前致谢.

uinavigationcontroller ipad ios ios7

57
推荐指数
3
解决办法
8万
查看次数

标签 统计

ios ×2

ios7 ×2

ipad ×1

statusbar ×1

uinavigationcontroller ×1