Objective c 同时隐藏状态栏和视图转换

Objective c 同时隐藏状态栏和视图转换,objective-c,ios,animation,statusbar,Objective C,Ios,Animation,Statusbar,我想在我的应用程序中从“初始化屏幕”过渡到“演示屏幕”。初始化屏幕的状态栏可见,但我希望演示屏幕使用全屏。我希望状态栏在初始化屏幕出现时消失,而不是在它之前或之后 在初始化屏幕视图控制器的回调中,显示“准备运行”,我执行以下操作: [UIView transitionFromView: setupViewController.view toView: runViewController.view duration: 1.0 options: UIViewAnimationOptionT

我想在我的应用程序中从“初始化屏幕”过渡到“演示屏幕”。初始化屏幕的状态栏可见,但我希望演示屏幕使用全屏。我希望状态栏在初始化屏幕出现时消失,而不是在它之前或之后

在初始化屏幕视图控制器的回调中,显示“准备运行”,我执行以下操作:

[UIView transitionFromView: setupViewController.view toView: runViewController.view 
    duration: 1.0 options: UIViewAnimationOptionTransitionCurlUp 
    completion: ^(BOOL finished) {
        [[UIApplication sharedApplication] setStatusBarHidden: YES withAnimation: UIStatusBarAnimationSlide];
        }];
但有了它,状态栏就会一直存在,直到卷曲动画完成,然后它就会向上滑动

所以我试了一下:

[UIView transitionFromView: setupViewController.view toView: runViewController.view 
    duration: 1.0 options: UIViewAnimationOptionTransitionCurlUp 
    completion: nil];
[[UIApplication sharedApplication] setStatusBarHidden: YES withAnimation: UIStatusBarAnimationSlide];
[UIView beginAnimations: @"whatever" context: nil];
[UIView setAnimationDuration: 1.0];
[UIApplication sharedApplication].statusBarHidden = YES;
[UIView transitionFromView: setupViewController.view toView: runViewController.view 
    duration: 1.0 options: UIViewAnimationOptionTransitionCurlUp completion: nil];
[UIView commitAnimations];
但这样,状态栏会在卷曲动画开始之前向上滑动

所以我试了一下:

[UIView transitionFromView: setupViewController.view toView: runViewController.view 
    duration: 1.0 options: UIViewAnimationOptionTransitionCurlUp 
    completion: nil];
[[UIApplication sharedApplication] setStatusBarHidden: YES withAnimation: UIStatusBarAnimationSlide];
[UIView beginAnimations: @"whatever" context: nil];
[UIView setAnimationDuration: 1.0];
[UIApplication sharedApplication].statusBarHidden = YES;
[UIView transitionFromView: setupViewController.view toView: runViewController.view 
    duration: 1.0 options: UIViewAnimationOptionTransitionCurlUp completion: nil];
[UIView commitAnimations];
我得到了同步动作,但状态栏只是淡出,而不是向上滑动

我真正想要的是状态栏与初始化屏幕一起卷曲(如果我使用卷曲或翻转,如果我使用翻转),以显示整个屏幕,但我会满足于状态栏在初始化屏幕卷曲的1.0秒间隔内向上滑动


感谢您的建议……

第三种方法似乎可以按照您的意愿工作,除非您使用了以下行:

[UIApplication sharedApplication].statusBarHidden = YES;
而不是:

[[UIApplication sharedApplication] setStatusBarHidden: YES withAnimation: UIStatusBarAnimationSlide];
它允许您设置向上滑动动画


但是,我认为不可能在卷曲动画中包含状态栏。

第三种方法似乎可以按照您的意愿工作,除非您使用了以下行:

[UIApplication sharedApplication].statusBarHidden = YES;
而不是:

[[UIApplication sharedApplication] setStatusBarHidden: YES withAnimation: UIStatusBarAnimationSlide];
它允许您设置向上滑动动画

但是,我认为不可能在卷曲动画中包含状态栏