Fix crash when status bar is set on Android in API level 21 or below

This commit is contained in:
Panayot Cankov
2017-01-23 16:22:10 +02:00
parent 05e247dfb4
commit 5b2d130b2c

View File

@@ -243,16 +243,20 @@ export class PageStyler implements style.Styler {
// android-status-bar-background-property // android-status-bar-background-property
private static setAndroidStatusBarBackgroundProperty(v: view.View, newValue: any) { private static setAndroidStatusBarBackgroundProperty(v: view.View, newValue: any) {
if (platform.device.sdkVersion >= "21") {
let window = app.android.startActivity.getWindow(); let window = app.android.startActivity.getWindow();
let nativeColor = new colorModule.Color(newValue).android; let nativeColor = new colorModule.Color(newValue).android;
window.setStatusBarColor(nativeColor); window.setStatusBarColor(nativeColor);
} }
}
private static resetAndroidStatusBarBackgroundProperty(v: view.View, nativeValue: any) { private static resetAndroidStatusBarBackgroundProperty(v: view.View, nativeValue: any) {
if (platform.device.sdkVersion >= "21") {
let window = app.android.startActivity.getWindow(); let window = app.android.startActivity.getWindow();
let nativeColor = (nativeValue instanceof colorModule.Color) ? (<colorModule.Color>nativeValue).android : new colorModule.Color(nativeValue).android; let nativeColor = (nativeValue instanceof colorModule.Color) ? (<colorModule.Color>nativeValue).android : new colorModule.Color(nativeValue).android;
window.setStatusBarColor(nativeColor); window.setStatusBarColor(nativeColor);
} }
}
private static getAndroidStatusBarBackgroundProperty(v: view.View): any { private static getAndroidStatusBarBackgroundProperty(v: view.View): any {
let page = <Page>v; let page = <Page>v;