动态对象补间

时间:2011-02-11 11:37:37

标签: flash actionscript-3 tween

我是Flash / ActionScript 3的新手,我正在尝试动态更新补间中的对象。

info变量将根据按下的按钮而改变。

我目前收到以下错误...

  

TypeError:错误#1009:无法访问null的属性或方法   对象参考。在fl.transitions :: Tween / setPosition()at   fl.transitions :: Tween / set position()在fl.transitions :: Tween()at   Map_fla :: MainTimeline /帧1()

我不确定我哪里出错了?

import fl.transitions.Tween;
import fl.transitions.easing.*;
import fl.transitions.TweenEvent;

var info:MovieClip;

var myTween:Tween = new Tween(info, "alpha", Strong.easeOut, 1, 0, 2, true);
myTween.stop();

btn_Button.addEventListener(MouseEvent.CLICK, onClick);

btn_Button.addEventListener(MouseEvent.CLICK, onClick2);

function onClick(e:MouseEvent){
    info = mc_England;
    myTween.start();
}

function onClick2(e:MouseEvent){
    info = mc_Scotland;
    myTween.start();
}

1 个答案:

答案 0 :(得分:1)

在创建补间时,

info为null,这就是您获得空引用错误的原因。将补间的实例化移动到您的点击处理程序中,你会没事的。

function onClick(e:MouseEvent){
    applyTween(mc_England);
}

function onClick2(e:MouseEvent){
    applyTween(mc_Scotland);
}

function applyTween(target:MovieClip){
    var myTween:Tween = new Tween(target, "alpha", Strong.easeOut, 1, 0, 2, true);
    myTween.start();
}