Frage

Hallo, ich versuche, mein Layout mit allen Ausrichtungstypen (Landschaft/Porträt) kompatibel zu machen. Dafür benutze ich layout-land und layout-port.

Dies eignet sich für Geräte mit nur 2 Orientierungspositionen (Landschaft und Porträt), funktioniert jedoch nicht, wenn ich ein Gerät drehe, das 4 Orientierungspositionen unterstützt (links/rechts, Port auf den Kopf nach unten/auf den Kopf). Funktioniert nur an der Standardposition, aber wenn ich das Gerät in der anderen Landschaftsposition drehe, wählen Android die layout-port Layouts statt von layout-land.

Wie kann ich dieses Problem in XML lösen? Oder die einzige Lösung besteht darin, mir die Orientierungsänderungen zu verwalten?

War es hilfreich?

Lösung 4

Es scheint, dass das Layout-Land funktioniert. Das Problem war, dass ich die Orientierungsänderung alleine verwaltet und nur 2 Arten von Orientierung angenommen habe.

(Ich verwalte die Orientierung nur, um den App -Titel abzubauen und sie in der Landschaft zum Vollbild zu machen.)

Vielen Dank für Ihre Antworten

Andere Tipps

Hier werden Sie feststellen, dass ich nur die Bühne für das Ereignis von StageOrientationEvent.orientation_Change höre. Wenn das Ereignis feuert, gibt es fünf mögliche Orientierungen, in denen sich die Bühne befinden kann: Standard, links gedreht, rechts, verkehrt herum und unbekannt.

http://www.unitedmindset.com/jonbcampos/2010/09/27/air-for-android-screen-orientation/

Sie können dies nicht mit XML tun. Sie müssen programmatisch machen. Um die Orientierungsänderung zu erkennen, können Sie verwenden OrientationEventListener

Ihr TargetsDK muss 2,2 betragen (wenn die Ausrichtung der Reversecape- und Reverseportrait eingeführt wurde ... ziemlich sicher, dass es in 2,2 war) und Ihr Gerät diese Orientierungen unterstützen muss. Zum Beispiel wird ein Sony -Tablett nicht in Reverseelandscape gehen, sondern reverseportrait machen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top