Actionscript 3 AS3:滚动tween alpha到滚动窗格中的最后一个子项,包含动态内容
我正在尝试更改scrollPane组件中最后一个子元素的alpha,以使溢出的对象消失,而不是被scrollPane剪切。我的意思是,一个孩子离顶部或底部越近,它的alpha值就越接近于零。如果其边距之间的alpha等于1 我在滚动窗格中放置了一个带有透明精灵的“页眉”和“页脚”,以便为alpha效果留出空白空间,对顶部元素也没有问题,下面是代码:Actionscript 3 AS3:滚动tween alpha到滚动窗格中的最后一个子项,包含动态内容,actionscript-3,math,components,Actionscript 3,Math,Components,我正在尝试更改scrollPane组件中最后一个子元素的alpha,以使溢出的对象消失,而不是被scrollPane剪切。我的意思是,一个孩子离顶部或底部越近,它的alpha值就越接近于零。如果其边距之间的alpha等于1 我在滚动窗格中放置了一个带有透明精灵的“页眉”和“页脚”,以便为alpha效果留出空白空间,对顶部元素也没有问题,下面是代码: function scrollListener(event:ScrollEvent):void { var base = 120;//mar
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);
函数scrollListener(事件:ScrollEvent):void{
var base=120;//页边距高度
var targ=event.currentTarget.getChildAt(3.getChildAt(0);//获取容器
var scrollY=event.currentTarget.verticalScrollPosition;//获取滚动位置
对于(var n1=0;n1<10;n1++){//子循环
var curr=target.getChildByName(“boton”+n1);//当前子项名称var
var curr_disp=curr.y-scrollY;
curr.alpha=1;//默认alpha
if(curr_disp对不起,我的英语不好。提前感谢。您可以使用相同的技术更改底部的alpha
您可以使用变量并计算要更改的alpha数量,例如从1到10,10 alpha将以相同的方式减少或增加。使用alpha blendModeHi在滚动面板上使用遮罩可能更容易(也更美观)。事实上,这是我的临时解决方案,但我希望孩子淡出一个简单的阿尔法基于位置,而不是梯度:-)谢谢!