[填坑記錄](méi)
在使用IOS9新框架[ReplayKit]進(jìn)行app錄屏的時(shí)候,
為了不把錄屏相關(guān)控制操作的UI錄進(jìn)去,
需要用不同的把錄的頁(yè)面和操作的界面UI放在不同的window上,
于是出現(xiàn)了"在錄屏頁(yè)面隱藏狀態(tài)欄之后,添加新的window,狀態(tài)欄又顯示了"的問(wèn)題.
IOS8以前控制狀態(tài)欄的方法都不管用了.
IOS6-8方法: 設(shè)置 info.plist 添加 View controller- based status bar appearance
1.當(dāng)View controller- based status bar appearance為YES,狀態(tài)欄由當(dāng)前控制器控制;
//在當(dāng)前頁(yè)面添加控制
- (BOOL)prefersStatusBarHidden
{
return YES;
}
2.當(dāng)View controller- based status bar appearance為NO,狀態(tài)欄由應(yīng)用UIApplication來(lái)管理。
[[UIApplication sharedApplication] setStatusBarHidden:<#(BOOL)#>];
[[UIApplication sharedApplication] setStatusBarStyle:<#(UIStatusBarStyle)#>];
IOS9以后新添加的window需要設(shè)置rootController:
//添加window
UIWindow *window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
[window setRootViewController:self];//設(shè)置當(dāng)前頁(yè)為新window根控制器
[window makeKeyAndVisible];
//控制狀態(tài)欄
- (BOOL)prefersStatusBarHidden {
return YES;
}
//設(shè)置樣式
- (UIStatusBarStyle)preferredStatusBarStyle {
return UIStatusBarStyleLightContent;
}