AS3 UILoader注册点,所有照片都不在中心

时间:2013-02-01 23:06:09

标签: actionscript-3 flash web dreamweaver flash-cs5

* 我有一些问题要将我的照片放在舞台上,我使用Flash cs5 as3 UILoader,照片尺寸都是不同的,所以我试图将UILoader注册点移动到顶部的中心自由变换工具,但是根本不做任何改变。 我不想检查属性中的ScaleContent,使那些照片质量很差。 1000px x 700px高阶段,照片应该是400px高。 我该怎么办?

      import flash.utils.Timer;
      import flash.events.TimerEvent;
      import flash.events.MouseEvent;
      import flash.events.Event;
      import fl.containers.UILoader;
      import flash.text.TextField;
      import flash.display.SimpleButton;
      import fl.transitions.Tween;
      import fl.transitions.TweenEvent;
      import fl.transitions.easing.*;
      stage.colorCorrection = ColorCorrection.ON;
      var myImage:String = "smallWildlife/00.jpg";
      var request:URLRequest = new URLRequest(myImage);
      uiLoader.addEventListener(Event.COMPLETE, completeHandler);
      uiLoader.addEventListener(ProgressEvent.PROGRESS, progressHandler);
      uiLoader.load(request);

      function progressHandler(event:ProgressEvent):void
      {

status_txt.text = "Percentage Loaded:" + Math.round(event.target.percentLoaded);
       }

       function completeHandler(event:Event):void
       {   
       uiLoader.x = stage.stageWidth/6 - uiLoader.content.width/6;
       uiLoader.y = stage.stageHeight/100 - uiLoader.content.height/700;
       new Tween(uiLoader,"rotationX",Elastic.easeOut,90,0,4,true);
       }

        next_btn.addEventListener(MouseEvent.CLICK, nextImage);

       //variable is a container that holds some value...;
       var imageNumber:Number = 0;

      function checkNumber():void
      {
next_btn.visible = true;
back_btn.visible = true;
//If the imageNumber is = 58, then do something...
if (imageNumber == 58)
{
    trace(imageNumber);
    next_btn.visible = false;
}
//if the imageNumber is = 1, then don't show the back button
if (imageNumber == 0)
 {
    trace(imageNumber);
        back_btn.visible = false;
  }
        }
       checkNumber();

       function nextImage(evtObj:MouseEvent):void
       {
//Adding to the current value +1
imageNumber++;
uiLoader.source = "smallWildlife/0" + imageNumber + ".jpg";
checkNumber();
      }

       back_btn.addEventListener(MouseEvent.CLICK, backImage);

      function backImage(evtObj:MouseEvent):void
      {
//Subtract 1 from the current value
imageNumber--;
uiLoader.source = "smallWildlife/0" + imageNumber + ".jpg";
checkNumber();
      }

      stop();

谢谢你的时间!

2 个答案:

答案 0 :(得分:0)

注册点是您编辑MovieClip时出现的小十字准线,而不是转换工具的定位点。

答案 1 :(得分:0)

尝试更改此

function completeHandler(event:Event):void
{   
    uiLoader.x = stage.stageWidth/6 - uiLoader.content.width/6;
    uiLoader.y = stage.stageHeight/100 - uiLoader.content.height/700;
    new Tween(uiLoader,"rotationX",Elastic.easeOut,90,0,4,true);
}

到这个

function completeHandler(event:Event):void
{   
    var spr = new Sprite();

    // Place spr anywhere on the stage
    spr.x = stage.stageWidth / 6 - uiLoader.content.width / 6;
    spr.y = stage.stageHeight / 100 - uiLoader.content.height / 700;
    spr.addChild( uiLoader );

    addChild( spr );

    // Center uiLoader in spr
    uiLoader.x = - uiLoader.width / 2;
    uiLoader.y = - uiLoader.height / 2;

    new Tween( spr, "rotationX", Elastic.easeOut, 90, 0, 4, true );
}
相关问题