我面临着以下的问题,我想提出一个modalViewController并使其覆盖整个屏幕,例如:IOS wantsFullScreenLayout状态栏可见
[controller setWantsFullScreenLayout:yes];
[myNavController presentModalViewController:controller animated:yes];
的结果是,控制器不覆盖整个屏幕和状态栏在顶部可见。 我不明白为什么会发生这种情况。
我面临着以下的问题,我想提出一个modalViewController并使其覆盖整个屏幕,例如:IOS wantsFullScreenLayout状态栏可见
[controller setWantsFullScreenLayout:yes];
[myNavController presentModalViewController:controller animated:yes];
的结果是,控制器不覆盖整个屏幕和状态栏在顶部可见。 我不明白为什么会发生这种情况。
wantsFullScreenLayout
属性不隐藏状态栏,它使得视图控制器在它后面展开(也可以放在导航栏之类的东西后面)。这方面的一个例子是内置的照片应用程序,其中一个画面显得落后状态栏和导航栏:
要进行模态视图控制器全屏你需要设置你的观点的modalPresentationStyle
财产控制器到UIModalPresentationFullScreen
。启用此功能后,您可能不需要或不想设置wantsFullScreenLayout
。
要隐藏你需要使用的UIApplication
的setStatusBarHidden:withAnimation:
法的状态栏。
尝试添加此:
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];
另外,如果你希望它在任何时候都隐藏,并且应用程序启动时,在你的plist文件,添加到Status bar initially hidden
YES
。
调用wantsFullScreenLayout之前呈现模式的看法是强制性的。否则,视图不会被调整为全屏。 –
Borut是正确的。尝试并在iOS 5和iPhone 6上测试。 –