AS3:在使用动态内容滚动补间alpha到scrollPane中的最后一个子项

时间:2014-06-20 06:41:55

标签: actionscript-3 math components

我正在尝试更改scrollPane组件中最后一个子项的alpha,以使溢出的对象消失,而不是被scrollPane剪切。我的意思是,一个孩子最接近顶部或底部,它的alpha值将接近于零。如果它在边缘alpha之间等于1;

我放了一个"标题"和一个"页脚"使用透明精灵进入scrollPane以获得alpha效果的空白空间并且对于顶部元素没有问题,这里是代码:

function scrollListener(event:ScrollEvent):void {
    var base = 120;//margins height
    var targ = event.currentTarget.getChildAt(3).getChildAt(0);//get container
    var scrollY = event.currentTarget.verticalScrollPosition;//get scroll position
    for (var n1 = 0; n1 < 10; n1++) {// loop for the children
        var curr = targ.getChildByName("boton"+n1);// current children name var
        var curr_disp = curr.y-scrollY;
        curr.alpha = 1;//default alpha
        if(curr_disp < base){//if Y is inferior to margin (var base)
            var alfa = ((curr_disp)/base)/2;
            curr.alpha = alfa;
        }
    }
};

sp.addEventListener(ScrollEvent.SCROLL, scrollListener);

我需要在底部做同样的事情,如果孩子在scrollPane的底部边界,它的alpha等于0,如果孩子在底部减去120(var&#39) ;基地&#39;)阿尔法将等于1.我真的迷路了,我的截止日期结束了。希望有人能给我一些建议。

抱歉我的英语不好。提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用相同的技术更改底部的

您可以使用变量并计算要更改的alpha值,例如1-10,10 alpha将以相同的方式减少或增加。