2011-05-23 80 views
0

SO,它已经有一段时间,因为我做的ActionScript 3再次,一直忙于大多与iOS编程..动态滑动面板

不管怎么说,我试图创建一个滑动的面板。

到目前为止,他们的工作,但我有一些麻烦,而我所尝试的一切都不做我想要的嘿嘿。

面板工作,我在for循环中生成其中5个,他们幻灯片打开和关闭时单击使用绿色环保。

但是,他们都有一个标签,需要滑动标签而不是保持在同一位置。 另外,我有一个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

看起来像_tabs.slide_mc.title_mc.text = titleArr[i];导致文本用滑块拖动。您需要将title_mc插入其他剪辑