2014-05-08 37 views
0

我可以隱藏狀態欄,但應用程序仍然考慮條的高度(請參見下圖)。我還需要確保在初始加載時隱藏的狀態欄沒有「閃爍」,因爲它會按下導航菜單按鈕,並且它會隱藏起來。如何在iOS應用程序中完全刪除UIStatusBar?

方法我試過:

加在我的主控制器以下。這個在初始加載時會閃爍佈局。

// hide the status bar 
ionic.Platform.fullScreen(); 

SET鍵,在info.plist中

<key>UIStatusBarHidden</key> 
<true/> 
<key>UIViewControllerBasedStatusBarAppearance</key> 
<false/> 

這相當於值對:

.run(function($ionicPlatform) { 
    $ionicPlatform.ready(function() { 
     // Hide the status bar 
     if(window.StatusBar) { 
     StatusBar.hide(); 
     } 
    }); 
    }) 

嘗試:

Status bar is initially hidden = YES 
View controller-based status bar appearance = NO 

使用的StatusBar plugin負載試過設置f在我MainViewController.m

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

ollowing並添加新的方法

- (BOOL)prefersStatusBarHidden { 
return YES; 
} 

我試着約3個不同的科爾多瓦插件關閉github上的。

我也是一個web開發人員,所以提供包括改變OBJ-C的答案時,請像我5解釋:}

http://forum.ionicframework.com/t/how-to-hide-uistatusbar/4025

謝謝!

enter image description here

回答

1

我在你的帖子上留下了對你的評論,但這裏是我提出的解決方案。

你可以做的是安裝閃屏pluign

$ cordova plugin add org.apache.cordova.splashscreen 

那麼做到這一點在你的。運行功能

.run(function ($ionicPlatform, $timeout) { 
    $ionicPlatform.ready(function() { 
     // Hide the status bar 
     if (window.StatusBar) { 
      StatusBar.hide(); 
      $timeout(function() { 
       window.navigator.splashscreen.hide(); 
      }, 2500); 
     } 
    }); 
}) 
+0

現在正在執行一個實現,我有兩個狀態欄插件加載。想知道這是否是問題的一部分。 –

+0

可能是,我知道有cordova的插件回購引起了一些混淆。 – mhartington

+0

我應該在控制檯中訪問window.StatusBar嗎?即使安裝了插件,我也沒有收到任何迴應。雖然window.statusbar返回一個對象BarProp {visible:true} –

0

嘗試在你的視圖控制器實現prefersStatusBarHidden。例如

- (BOOL)prefersStatusBarHidden 
{ 
    return YES; 
} 
+0

這給了我同樣的結果在上面的圖片。我需要那個粉紅色的按鈕與頂部齊平。出於某種原因,狀態欄是隱藏的,但它的界限仍然受到尊重。我甚至試圖絕對定位左上角的粉紅色按鈕,這不是我的本地主機上的問題,只在模擬器中。 –

0

對於每個視圖寫方法IOS 7:

- (BOOL)prefersStatusBarHidden 
{ 
    return YES; 
} 

而對於IOS 6寫在homeview follwing一次或的appDelegate

[UIApplication sharedApplication].statusBarHidden = YES; 
0

'CDVViewController.m',轉到

- (void)viewDidLoad 

an d插入下面

[[UIApplication sharedApplication] setStatusBarHidden:YES]; 

我CDVViewController.m看起來像這樣,

- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 

    NSURL* appURL = nil; 
    NSString* loadErr = nil; 
    [[UIApplication sharedApplication] setStatusBarHidden:YES]; 
..... 
+0

我已經試過了= { –

相關問題