wie mache ich die obere Statusleiste in Phonegap 3.1.0 für iOS7 mit weißem Text durchscheinend?
Die App sieht in Mobile Safari gut aus, aber wenn ich versuche, sie in Phonegap auszuführen, ist der Text in der oberen Leiste nur während des Ladens der App weiß, danach ist er schwarz, egal welche Einstellungen ich in der Projektkonfiguration vorgenommen habe.
Im Moment ist <meta name="Apple-mobile-web-app-status-bar-style" content="black-translucent">
in der Webseite & 'Status Bar Style' = 'Schwarz durchscheinend' in XCode ... hilft nicht.
Bitte helfen Sie!
Sie können dies tun, ohne Meta-Tags zu verwenden oder irgendetwas in XCode zu bearbeiten.
Installieren Sie zuerst das Statusleisten-Plugin über die CLI:
cordova plugin add cordova-plugin-statusbar
Dann können Sie diese Einstellungen verwenden, um die Statusleiste (in config.xml) zu gestalten:
<preference name="StatusBarOverlaysWebView" value="true" />
<preference name="StatusBarStyle" value="lightcontent" />
Auf diese Weise erhalten Sie in iOS 7 eine transparente Leiste mit weißem Text. Weitere Optionen finden Sie unter http://plugins.cordova.io/#/package/org.Apache.cordova.statusbar
endlich habe ich lösung gefunden.
Stellen Sie sicher, dass Sie Folgendes haben: In Ihrer index.html haben Sie folgendes Meta-Tag:
<meta name="Apple-mobile-web-app-status-bar-style" content="black-translucent">
Öffnen Sie bei Xcode die Datei [YourPrjectName] .plist und fügen Sie folgende Zeilen hinzu:
"Status bar style" = "Transparenter schwarzer Stil (Alpha von 0,5)" AND
"Controller-basierte Statusleiste anzeigen" = "NEIN"
Ohne zweiten Line-In geht das nicht (eigentlich war das in meinem Fall das Problem).
wenn Sie Phonegap Build verwenden, können Sie anrufen
StatusBar.styleLightContent();
Werfen Sie einen Blick auf den unten stehenden Link, ich hoffe, dies könnte Ihnen helfen.
Vielleicht ist es zu spät, aber jemand anderes mit der gleichen Frage kann dies beheben, indem er das folgende Plugin installiert.
cordova plugin add cordova-plugin-disable-ios11-statusbar --save
Dann erstelle die App und starte sie. Das Problem ist gelöst
Fügen Sie diesen hinzu
function onDeviceReady() {
if (parseFloat(window.device.version) === 7.0) {
document.body.style.marginTop = "20px";
}
}
document.addEventListener('deviceready', onDeviceReady, false);
http://coenraets.org/blog/2013/09/phonegap-and-cordova-with-ios-7/
Ich dachte, eine aktuellere Antwort könnte hier jemandem helfen. Dies funktioniert in Cordova 3.7+ und iOS 8.x und macht das zusätzliche Plugin überflüssig.
Stellen Sie in der Plist-Datei Ihres Projekts sicher, dass "Statusleiste anfangs ausgeblendet ist" und "Controller-basierte Statusleistenanzeige anzeigen" auf "NEIN" gesetzt sind.
Fügen Sie dann in MainViewController.m in - (void)viewDidLoad
Folgendes hinzu:
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES];
oder
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault animated:YES];
für weißen oder schwarzen Text in Ihrer Statusleiste.
Alternativ können Sie beide Plist-Attribute auf YES setzen, um sie vollständig auszublenden.