* 我有一些问题要将我的照片放在舞台上,我使用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();
谢谢你的时间!
答案 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 );
}