星期四, 9月 04, 2008

AS3:呼叫外部XML的連結(Using links from external xml file in AS3)

前陣子做了個Flash的Banner,這個連結之前是做在Flash裡面,但現在我想用連結外部XML檔案的方式來達到連結的效果。好處是之後若要改連結的話,只要改XML檔案的內容即可,無需再開啟Flash、輸出成SWF檔、再上傳。

XML程式碼如下:
<links>
<title link="http://www.homepage.com/promotion.htm">
The Promotion</title>

</links>
AS3的程式碼如下:
import flash.net.URLRequest;
import flash.events.MouseEvent;

var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("my-xml-file.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);

var promotionLinkAttribute:XMLList;

function processXML(e:Event):void {
myXML = new XML(e.target.data);
promotionLinkAttribute = myXML.title[0].attribute("link");
}

senser.buttonMode=true;

senser.addEventListener(MouseEvent.MOUSE_OVER, hoverPromotionBanner);
senser.addEventListener(MouseEvent.MOUSE_OUT, visitedPromotionBanner);
senser.addEventListener(MouseEvent.CLICK, openPromotionPage);

function hoverPromotionBanner(e:MouseEvent):void{
MovieClip(getChildByName("senser")).gotoAndPlay("active");
this.gotoAndStop(currentFrame);
}
function visitedPromotionBanner(e:MouseEvent):void{
MovieClip(getChildByName("senser")).gotoAndPlay("visited");
this.play();
}
function openPromotionPage(e:MouseEvent):void {
var promotionLink:URLRequest = new
URLRequest(promotionLinkAttribute);
navigateToURL(promotionLink, "_self");
//trace(promotionLinkAttribute);
}

星期日, 8月 31, 2008

AS3:TweenMax

介紹一個Flash AS3很方便的Tween Class: TweenMAX。這是一隻Jack Doyle所撰寫的程式,是TweenLite的加強版本;可以讓你以程式碼控制的方式更快速的達到許多Flash動態的效果。

首先先到TweenMAX下載免費的Tween。

下載後,將"GS"資料夾放置在與.FLA相同的地方。

接著你就可以使用TweenMAX的功能了。程式碼範例如下:
import gs.*;
var myTween:TweenMax = new TweenMax(mc, 2, {x:500, y:200});
//then later, if you need to change the tween
//so that the "x" property tweens to 100 instead of 500...

myTween.setDestination("x", 100);
//even if the tween is in progress, the value will be updated