Pregunta

Tengo un error que dice "Intento de acceso a la rotación método inaccesibles mediante una referencia con tipo estático flash.display: Sprite.ssd.rotation (90)}" Sólo quiero saber cómo girar mi imagen por 90 grados cuando haga doble clic en él.

var shootingstar:Loader = new Loader();
shootingstar.load(new URLRequest("http://i51.tinypic.com/m8jp7m.png"));
shootingstar.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoadingComplete);
var ssd:Sprite = new Sprite();
 function onLoadingComplete(event:Event):void
 {
    ssd.addChild( event.currentTarget.loader.content );
    ssd.addEventListener(MouseEvent.MOUSE_DOWN, drag);
    ssd.addEventListener(MouseEvent.MOUSE_UP, drop);
    ssd.addEventListener(MouseEvent.DOUBLE_CLICK, rotate)
 ssd.height=180
 ssd.width=124
 }
 function drag(event:MouseEvent):void{
     ssd.startDrag()
  }
 function drop(event:MouseEvent):void{
  ssd.stopDrag()
 }
 function rotate():void{
     ssd.rotation(90)
 }
¿Fue útil?

Solución

El error sugiere que el método de rotación no es accesible, es decir, privada o protegida. Por lo tanto usted no es capaz de llamar directamente como en su rotación de código (90).

En lugar usted debe utilizar la propiedad pública de rotación

    rotation = 90;

Como superfro puntos out, se debe también obtener un error del método de rotación que requiere un parámetro MouseEvent. Por lo que prácticamente ..

function rotate(event:MouseEvent):void
{
   ssd.rotation = 90;
}

Por último, se asegura de que la propiedad doubleClickEnabled del Sprite se establece en true

function onLoadingComplete(event:Event):void
{
   ssd.doubleClickEnabled = true;
   etc....

Otros consejos

¿Usted ha intentado ssd.rotation = 90;?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top