Wir erstellen eine HTML5 / JavaScript-App, die für Tablets entwickelt wurde, und wir möchten meine Bildschirme in Quer- und Hochformat anders gestalten.
Ursprünglich haben wir Orientierungsänderungsbenachrichtigungen erfasst und die aktuelle Ausrichtung verfolgt (allgemein als 0, 90, -90 oder 180 Grad angegeben - siehe diese Frage ). Leider melden verschiedene Geräte unterschiedliche Ausrichtungen als "0" . Dieser Link argumentiert, dass es sich um einen Fehler handelt, aber es gibt Hinweise darauf, dass dies wie geplant funktioniert - zum Beispiel Dieser Artikel schlägt vor, dass" Landschaft "die Standardausrichtung ist, und diese Geräte geben im Querformat eine Ausrichtung von" 0 "an.
Als nächstes haben wir versucht, uns nur die tatsächliche Bildschirmgröße anzusehen, wobei wir angenommen haben, dass, wenn die Breite größer als die Höhe ist, wir im Querformat arbeiten. Aber dieser Algorithmus wird verwirrt, wenn die Bildschirmtastatur angezeigt wird - wenn die Tastatur angezeigt wird, werden die Abmessungen des sichtbaren Bereichs zurückgegeben. Wenn sich das Gerät streng genommen im Hochformat befindet, ist der Teil des Bildschirms, der nicht von der Tastatur verdeckt wird, breiter als hoch.
Die Antwort auf diese Frage ist ziemlich alt. Ist das immer noch die beste Antwort? Hat jemand einen guten Algorithmus, der die Sichtbarkeit der Tastatur berücksichtigt?
Tags und Links javascript android