在使用UIImagePickerController录像之后,进行我们自己的业务逻辑操作的时候会出现整个页面的Frame向下移动了大概20个px,遇到这种情况不要慌,这个只是StatusBar的显示与隐藏问题。废话不多说,接下来上解决方案。
1、打开info.plist文件,添加键值。
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
2、在打开UIImagePickerController之前设置StatusBar隐藏。
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationFade];//防止出现20px下移
[nav presentViewController:[_imagePickerCoordinatorcameraVC] animated:YES completion:nil];
3、在UIImagePickerController完成拍摄和取消后设置StatusBar显示。
[picker dismissViewControllerAnimated:NO completion:^{
dispatch_async(dispatch_get_main_queue(), ^{
[[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:UIStatusBarAnimationFade];
});}];
OK,问题就这样轻松解决了。
文章均来源于工程实践,行文倾向于问题的解决而不是原理的解释,敬请理解。
看完我的博客,如果你觉得我写的文章对你有一丁点儿帮助的话,那么请你在下面点个赞,让我知道这文章有起了它应该起的作用,谢谢!!!