När automatisk orientering är aktiverat, och användaren roterar enheten, orienteras hela användargränssnittet om, inklusive aktivitetsfältet och ditt program, av operativsystemet. Följaktligen ändras scenens proportioner från stående till liggande eller tvärtom. När proportionerna ändras, ändras även scenens dimensioner.
Du kan aktivera eller inaktivera automatisk orientering vid körning genom att ange egenskapen
autoOrients
för scenen som
true
eller
false
. Du kan ange det inledande värdet på den här egenskapen i AIR-programbeskrivningen med elementet
<autoOrients>
. (Tänk på att i tidigare versioner än AIR 2.6 är
autoOrients
en skrivskyddad egenskap, som bara kan anges i programbeskrivningsfilen.)
Om du anger proportionerna för liggande och stående samt dessutom aktiverar automatisk orientering, kommer AIR att begränsa den automatiska orienteringen till de angivna proportionerna.
Ändringar av scendimensioner
När scenens dimensioner ändras skalas sceninnehållet och placeras om i enlighet med egenskaperna
scaleMode
och
align
för Stage-objektet. För det mesta blir resultatet inte så bra om du förlitar dig på det automatiska beteende som
scaleMode
-inställningarna för scenen ger. Du måste i stället göra om layouten eller rita om grafiken och komponenterna för att skapa stöd för mer än en proportion. (Med flexibel layoutlogik fungerar programmet även bättre på enheter med olika skärmstorlekar och proportioner.)
Följande bild visar effekten av de olika
scaleMode
-inställningarna när en vanlig mobilenhet roteras:
Bilden visar det skalningsbeteende som används vid rotation från liggande till stående orientering med olika skalningslägen. Rotation från stående till liggande orientering ger upphov till liknande effekter.
Orienteringsändringshändelser
Stage-objektet skickar två sorters händelser som du kan använda för att identifiera och reagera på orienteringsändringar. Både
resize
- och
orientationChange
-händelser för scenen skickas när automatisk orientering aktiveras.
Det är bäst att använda
resize
-händelsen när du förlitar dig på automatisk orientering för att hålla skärmen upprätt. När scenen skickar en
resize
-händelse ritar du om innehållet eller ändrar dess layout efter behov.
resize
-händelsen skickas bara när scenens skalningsläge är inställt på
noScale
.
Du kan också använda
orientationChange
-händelsen för att identifiera orienteringsändringar.
orientationChange
-händelsen skickas bara när automatisk orientering är aktiverat.
Obs!
På vissa mobila plattformar skickar scenen en
orientationChanging
-händelse, som kan avbrytas, innan resize- eller orientationChange-händelser skickas. Eftersom händelsen inte stöds på alla plattformar bör du inte förlita dig på den.