Foros del Web » Creando para Internet » Flash y Actionscript »

[AIR] [AS3] Mover clips de película para ajustar pantalla de dispositivos Android

Estas en el tema de [AIR] [AS3] Mover clips de película para ajustar pantalla de dispositivos Android en el foro de Flash y Actionscript en Foros del Web. Como bien sabrán, los dispositivos Android tienen una enorme variedad de tamaños de pantalla, y me gustaría adaptar mi app para que funcione en la ...
  #1 (permalink)  
Antiguo 03/08/2013, 05:59
Avatar de yonic  
Fecha de Ingreso: abril-2010
Mensajes: 21
Antigüedad: 14 años, 7 meses
Puntos: 3
[AIR] [AS3] Mover clips de película para ajustar pantalla de dispositivos Android

Como bien sabrán, los dispositivos Android tienen una enorme variedad de tamaños de pantalla, y me gustaría adaptar mi app para que funcione en la gran mayoría de las pantallas.

Pensé que podría usar AIR y con la función de pantalla completa, mover o cambiar de tamaño los elementos de la pantalla para que no quede distorsionado y se pueda ver todo. Intenté usar este código para mover los movieclips para que queden igual de colocados en cualquier pantalla con respecto al documento original, de 550px x 400px:

Código actionscript:
Ver original
  1. import flash.system.Capabilities;
  2. import flash.events.Event;
  3. import flash.display.StageScaleMode;
  4.  
  5.  
  6. stage.addEventListener(Event.ENTER_FRAME,leer);
  7.  
  8. var difN:Number = (((stage.stageHeight*stage.fullScreenWidth/stage.fullScreenHeight)-stage.stageWidth)/2);
  9.  
  10. function leer(e:Event):void {
  11.     difN = (((stage.stageHeight*stage.fullScreenWidth/stage.fullScreenHeight)-stage.stageWidth)/2);
  12.     stage.scaleMode = StageScaleMode.SHOW_ALL;
  13.     ancho.text = stage.fullScreenWidth.toString();
  14.     alto.text = stage.fullScreenHeight.toString();
  15.     operacion.text = (stage.stageHeight*stage.fullScreenWidth/stage.fullScreenHeight).toString();
  16.     dif.text = difN.toString();
  17.    
  18. }
  19.  
  20. stage.addEventListener(KeyboardEvent.KEY_UP,useFullScreen);
  21. function useFullScreen(e:KeyboardEvent):void {
  22.     if (e.ctrlKey) {
  23.         switch (e.keyCode) {
  24.             case Keyboard.M:
  25.                 stage.displayState = StageDisplayState.FULL_SCREEN;
  26.             break;
  27.             }
  28.         }
  29. }
  30.    
  31.     obj1.x -= difN;
  32.     obj2.x -= difN;
  33.     obj3.x += difN;
  34.     obj4.x += difN;

Y aquí el problema: El código sí funciona cuando los clips de película no se mueven, pero yo quiero utilizar interpolaciones de movimiento (clásicas principalmente), y el código no funciona con estos clips de película, su movimiento se inestabiliza.

¿Hay alguna forma de poder ajustar los clips de película con interpolaciones para que se ajusten correctamente a otro tamaño de pantalla? Si esto no es posible, ¿qué otro método puedo usar para que quede proporcional (que no salga distorsionado) y que se pueda ver todo correctamente?

Etiquetas: android, as3, flash, pantalla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:40.