The
StatusBar
object provides some functions to customize the iOS StatusBar.
To include the StatusBar plugin in your PhoneGap Build application, add this to your config.xml:
<gap:plugin name="com.phonegap.plugin.statusbar" />
These launch preferences not yet supported by PhoneGap Build
-
StatusBarOverlaysWebView (boolean, defaults to true). On iOS 7, make the statusbar overlay or not overlay the WebView at startup.
<preference name="StatusBarOverlaysWebView" value="true" />
-
StatusBarBackgroundColor (color hex string, defaults to #000000). On iOS 7, set the background color of the statusbar by a hex string (#RRGGBB) at startup.
<preference name="StatusBarBackgroundColor" value="#000000" />
During runtime you can use the StatusBar.hide function below, but if you want the StatusBar to be hidden at app startup, you must modify your app's Info.plist file.
Add/edit these two attributes if not present. Set "Status bar is initially hidden" to "YES" and set "View controller-based status bar appearance" to "NO". If you edit it manually without Xcode, the keys and values are:
<key>UIStatusBarHidden</key>
<true/>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
On PhoneGap Build this can be done by adding the following to your config.xml:
<gap:config-file platform="ios" parent="UIStatusBarHidden">
<true/>
</gap:config-file>
<gap:config-file platform="ios" parent="UIViewControllerBasedStatusBarAppearance">
<false/>
</gap:config-file>
- StatusBar.overlaysWebView
- StatusBar.styleDefault
- StatusBar.styleLightContent
- StatusBar.styleBlackTranslucent
- StatusBar.styleBlackOpaque
- StatusBar.backgroundColorByName
- StatusBar.backgroundColorByHexString
- StatusBar.hide
- StatusBar.show
- StatusBar.isVisible
<feature name="StatusBar">
<param name="ios-package" value="CDVStatusBar" onload="true" />
</feature>
On iOS 7, make the statusbar overlay or not overlay the WebView.
StatusBar.overlaysWebView(true);
On iOS 7, set to false to make the statusbar appear like iOS 6. Set the style and background color to suit using the other functions.
- iOS
StatusBar.overlaysWebView(true);
StatusBar.overlaysWebView(false);
Use the default statusbar (dark text, for light backgrounds).
StatusBar.styleDefault();
- iOS
Use the lightContent statusbar (light text, for dark backgrounds).
StatusBar.styleLightContent();
- iOS
Use the blackTranslucent statusbar (light text, for dark backgrounds).
StatusBar.styleBlackTranslucent();
- iOS
Use the blackOpaque statusbar (light text, for dark backgrounds).
StatusBar.styleBlackOpaque();
- iOS
On iOS 7, when you set StatusBar.statusBarOverlaysWebView to false, you can set the background color of the statusbar by color name.
StatusBar.backgroundColorByName("red");
Supported color names are:
black, darkGray, lightGray, white, gray, red, green, blue, cyan, yellow, magenta, orange, purple, brown, clear
- iOS
On iOS 7, when you set StatusBar.statusBarOverlaysWebView to false, you can set the background color of the statusbar by a hex string (#RRGGBB).
StatusBar.backgroundColorByHexString("#C0C0C0");
- iOS
Hide the statusbar.
StatusBar.hide();
- iOS
Shows the statusbar.
StatusBar.show();
- iOS
Read this property to see if the statusbar is visible or not.
if (StatusBar.isVisible) {
// do something
}
- iOS