iOS13 显示隐藏的导航栏和状态栏时需按特定顺序

从一个正常界面push到新界面,新界面需要隐藏状态栏和导航栏。

在iOS13中,从无导航栏和装态栏的界面退回有导航栏和装态栏的界面时,

需要先设置状态栏显示,再设置导航栏显示,否则退回有导航栏和装态栏的界面时,

导航栏和状态栏显示时重合了。

 

在无导航栏和装态栏的界面:

-(void)viewWillAppear:(BOOL)animated{

    [self.navigationController setNavigationBarHidden:YES animated:YES];

    [[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:NO];

}

 

//要先显示状态栏,再显示导航栏。

-(void)viewWillDisappear:(BOOL)animated{

    [[UIApplication sharedApplication] setStatusBarHidden:NO withAnimation:NO];

    [self.navigationController setNavigationBarHidden:NO animated:NO];

}

你可能感兴趣的:(iPhone)