我希望狀態欄保持黑色不透明,同時顯示照片庫選擇器(照片選擇器將其更改爲黑色半透明),這解決了我的問題。
設置UIImagePickerDelegate:
libraryUI.delegate = self;
實現下面的回調:
- (void)navigationController:(UINavigationController *)navigationController
willShowViewController:(UIViewController *)viewController
animated:(BOOL)animated {
if ([navigationController isKindOfClass:[UIImagePickerController class]] &&
((UIImagePickerController *)navigationController).sourceType == UIImagePickerControllerSourceTypePhotoLibrary) {
[[UIApplication sharedApplication] setStatusBarHidden:NO];
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleBlackOpaque animated:NO];
}
}
您可以在這裏指定任何一種狀態欄風格。在你的情況下,你可能需要刪除sourceType檢查並指定UIStatusBarStyleBlackTranslucent
。
哦,這是行不通的。我也嘗試過UIApplication的子類化,但它也沒有工作。也許UIImagePickerController正在使用私有方法。 – Eonil 2010-06-06 04:49:31