关于在 loadView 中改变状态栏的可视性

时间:2022-09-11 05:50:24

这种问题不知道大家是否遇见过,在此用两句话(时间紧迫,还得加班)分享下今天犯的错误

  我把状态栏的的可视性的改变写在了loadView 里面,然后就出现了调用了两次 loadView 和 viewDidLoad 方法,很是郁闷,找了好长时间的 bug 最后通过在网上查资料了才发现错误原因:

因为改变可视性会改变view 的长度,所以 loadView 会创建两个 view, 即loadView 和 viewDidLoad 两次,但是影响下不是太大,就是怕造成以后的位置错误

 1 - (void)loadView {
2 NSLog(@"loadView");
3 // 隐藏状态栏
4 [UIApplication sharedApplication].statusBarHidden = YES;
5
6 // .... 创建UIView
7 self.view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds] ;
8 self.view.backgroundColor = [UIColor grayColor];
9 }
10
11 - (void)viewDidLoad {
12 [super viewDidLoad];
13 NSLog(@"viewDidLoad");
14 }