所以,我已经有一段时间了,因为我再次完成了动作脚本3,主要是忙于iOS编程..
无论如何,我想要创建的是一个滑动面板。
到目前为止他们工作但我遇到了一些麻烦,我尝试的一切都没有做我想做的事。
面板工作,我在for循环中生成其中5个,当使用greensock点击时,它们会滑动打开和关闭。
但是,它们都有一个标签,需要随之滑动而不是停留在同一位置。 另外,我有一个if / else来检查面板是否打开,但我想单独检查这个而不是整体。
完整的代码是:
import com.greensock.TweenLite;
import flash.geom.ColorTransform;
import flash.text.engine.TabStop;
import flash.events.Event;
import flash.text.TextField;
import flash.text.TextFormat;
// Define shizz
var _tabs:mainTab;
var stageW = 950;
var stageH = 550;
var isOpen:Boolean = false;
function init() {
trace("initialize");
var colorArr:Array = [0x00b2c1, 0xdf007a, 0xf39b24, 0xeb690b, 0xa1c438, 0xd5d931];
var titleArr:Array = ["papier", "kunststof", "glas", "hout", "metaal", "batterijen"];
for (var i:Number = 0; i < 6; i++) {
_tabs = new mainTab();
_tabs.x = 91+_tabs.width*i;
_tabs.y = -160;
_tabs.slide_mc.title_mc.text = titleArr[i];
_tabs.slide_mc.title_mc.mouseEnabled = false;
var newColor:ColorTransform = _tabs.slide_mc.box_mc.transform.colorTransform;
newColor.color = colorArr[i];
_tabs.slide_mc.box_mc.transform.colorTransform = newColor;
_tabs.slide_mc.box_mc.addEventListener(MouseEvent.CLICK, doSomething);
this.addChild(_tabs);
}
}
function doSomething(e:Event):void {
var clickMC = e.target;
if (isOpen) {
trace("is Open");
var dropTab:TweenLite = new TweenLite(clickMC, 0.5, {y: -8});
dropTab.play();
isOpen = !isOpen;
} else {
trace("is Closed, Text is:");
var dropTab2:TweenLite = new TweenLite(clickMC, 0.5, {y: 177});
dropTab2.play();
isOpen = !isOpen;
}
}
init();
这是file。
那我需要什么帮助呢? - 如何使滑动面板中的标题与面板本身进行动画制作。 - 检查当前点击面板是否打开的方法(单独检查)。
提前感谢!
答案 0 :(得分:0)
看起来像_tabs.slide_mc.title_mc.text = titleArr[i];
导致文本被滑动拖动。您需要将title_mc
插入其他剪辑