【发布时间】:2010-02-18 17:30:23
【问题描述】:
我的滚动计数器没有显示 1-9...每十个间隔只显示“零”。它可以播放,但代码在 NumbersView.as 的第 37 行未完成。注意 Tweener 用于显示精灵。我该如何完成?
我在测试什么“NumbersView.as”
循环错误、onComplete、缺少参数或函数
- Tweener 代码,第 37 行?
- for 循环,第 22 行? for (var i:Number = 0; i
感谢您的帮助!
alt text http://www.ashcraftband.com/myspace/videodnd/note3.jpg
numbers.fla
alt text http://www.ashcraftband.com/myspace/videodnd/note1.jpg alt text http://www.ashcraftband.com/myspace/videodnd/note2.jpg
NumbersView.as“看Tweener部分到底部”
package
{
import flash.display.DisplayObject;
import flash.display.MovieClip;
import flash.utils.Dictionary;
import flash.events.Event;
import caurina.transitions.Tweener;
public class NumbersView extends MovieClip
{
private var _listItems:Array = new Array();
public function NumbersView()
{
var item:NumberImage;
for (var i:Number = 0; i < 9; i++) {
item = new NumberImage();
addChild(item);
item.x = i * item.width;
_listItems.push(item);
}
}
public function setTime($number:String):void {
var nums:Array = $number.split("");
for (var i:Number = 0; i < nums.length; i++) {
if (int(nums[i]) == 0) {
Tweener.removeTweens(_listItems[i].moveableNumber_mc);
if (_listItems[i].moveableNumber_mc.y < 0) {
_listItems[i].moveableNumber_mc.y = 120;
}
Tweener.addTween(_listItems[i].moveableNumber_mc, { y: 0, time:.3 } );
} else {
Tweener.addTween(_listItems[i].moveableNumber_mc, { y: -120 * int(nums[i]), time:.3} );
}
}
}
}
}
NumberDocumentClass.as“工作正常”
package {
import flash.display.Sprite;
import flash.utils.Timer;
import flash.events.TimerEvent;
public class NumberDocumentClass extends Sprite {
private var timer:Timer = new Timer(10);
private var count:int = 0;
private var fcount:int = 0;
private var numbers:NumbersView;
public function NumberDocumentClass() {
timer.addEventListener(TimerEvent.TIMER, incrementCounter);
timer.start();
numbers = new NumbersView();
addChild(numbers);
}
function incrementCounter(event:TimerEvent) {
count++;
fcount=int(count*count/1000);//starts out slow... then speeds up
numbers.setTime(formatCount(fcount));
}
function formatCount(i:int):String {
return ("000000000" + i).substr(-9, 9);
}
}
}
我已经调试好了!
【问题讨论】:
标签: flash actionscript-3 arrays loops