Domanda

ho ottenuto un errore che dice "accesso Tentativo di rotazione metodo inaccessibili attraverso un riferimento con tipo statico flash.display: Sprite.ssd.rotation (90)}" Voglio solo sapere come ruotare la mia immagine da 90degrees Facendo doppio click su di esso.

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)
 }
È stato utile?

Soluzione

L'errore suggerisce che il metodo di rotazione non è accessibile, cioè, privato o protetto. Pertanto non si è in grado di chiamare direttamente come nel codice di rotazione (90).

Invece si dovrebbe utilizzare la proprietà di rotazione pubblica

    rotation = 90;

Come superfro punti, si dovrebbe anche ottenere un errore dal metodo rotate che richiede un parametro MouseEvent. Così praticamente ..

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

Infine, fa in modo che la proprietà doubleClickEnabled della Sprite è impostata su true

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

Altri suggerimenti

Hai provato ssd.rotation = 90;?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top