2014-02-14 26 views
1

我有一個iOS 7應用程序,我已經在didFinishLaunchingWithOptions如下狀態欄文本設置爲白色:IOS 7 - 選擇從畫廊的照片重置statusBarStyle

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; 

我有一個調用一個JavaScript網頁視圖原生Image Picker。在Image Picker中,當我從圖庫中選擇一張照片時,狀態欄文本被重置爲黑色。

解決此問題的一種方法是在Image Picker關閉時再次應用上述代碼。但是,我無法檢測到此事件,因爲它在webview上。

任何想法如何解決這個問題?

+0

找到了解決方案/ – moosa0709

回答

1

我通過實施這個解決它:

-(void) viewDidAppear:(BOOL)animated 
{ 

    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; 

    [super viewDidAppear:animated]; 

} 

只要照相館關閉,該代碼就會被調用。

0

請嘗試下面的步驟。

-> Set the "View controller-based status bar appearance" to "NO" in the plist 

然後用

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 

     [UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; 

} 
+0

我已經'設置「基於視圖控制器的狀態欄外觀」爲「否」plist' – Ketan

3

嘗試在視圖控制器此代碼工作對我來說

- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated 
    { 
    [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent]; 
    } 
+0

我的UIViewController是一個沒有導航欄的單頁面等等,所以這個方法沒有得到調用。 – Ketan

+0

你試過這個嗎? – moosa0709

+0

是的,它不起作用,因爲該方法沒有被調用 – Ketan

相關問題