我面临以下问题,我尝试呈现一个 modalViewController 并使其覆盖整个屏幕,例如:
[controller setWantsFullScreenLayout:yes];
[myNavController presentModalViewController:controller animated:yes];
结果是控制器不会覆盖整个屏幕,并且状态栏在顶部可见。
我真的不明白为什么会发生这种情况。
The wantsFullScreenLayout
属性不会隐藏状态栏,它使视图控制器布局在其后面(并且也布局在导航栏之类的东西后面)。内置的照片应用程序就是一个例子,其中的图片出现在状态栏和导航栏后面:
要使模态视图控制器全屏显示,您需要设置modalPresentationStyle https://developer.apple.com/library/ios/documentation/uikit/reference/UIViewController_Class/Reference/Reference.html#//apple_ref/occ/instp/UIViewController/modalPresentationStyle你的视图控制器的属性UIModalPresentationFullScreen
。启用此功能后,您可能不需要或不想设置wantsFullScreenLayout
.
要隐藏状态栏,您需要使用setStatusBarHidden:withAnimation: https://developer.apple.com/library/ios/DOCUMENTATION/UIKit/Reference/UIApplication_Class/Reference/Reference.html#//apple_ref/occ/instm/UIApplication/setStatusBarHidden:withAnimation:的方法UIApplication
.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)