Я создаю пользовательский предварительный загрузчик, который отличается от «традиционной» скользящей панели, которая является обычной в RIA. Прелоадер использует 100 белых лазерных лучей, которые расположены по прямой линии, и вместе они показывают индикатор выполнения. Позвольте мне описать, как это работает, прежде чем я задам свой вопрос:
................. ....... ,,,,,,,,, ::::::::::: :::::::::::::: BBBBBBBB и так далее ...
Приведенная выше строка отражает дух индикатора предварительного загрузчика. На этом рисунке, чем крупнее и толще персонаж, тем ярче лазерный луч в моем настоящем прелоадере:
- Самый дальний лазер направо показывает текущий загруженный процент. Это также самый яркий лазерный луч.
- Все остальные тянущиеся лазеры становятся все более тусклыми, пока не станут полностью черными, как будто они сожгли все в задней части экрана.
Шаг "2" - вот где все становится сложнее. По какой-то причине пробные лазеры не становятся темнее, за исключением нескольких случайных лазеров. Вот фрагмент кода, управляющего яркостью (или, как я уже использовал, свойством альфа) точки:
... more code ...
//Build the dots according the configuration and load status parameters
private function buildDots(x:int, y:int):void {
//Draw the dot, details not shown
var dot:Shape = new Shape();
//Begin the transitioning
this.fadeOn(dot);
}
//Fade a dot to full brightness
private function fadeOn(dot:Shape):void {
var fadeOn:Tween = new Tween(dot, "alpha", None.easeNone, 0, 1, this.fadeOnTime, true);
fadeOn.addEventListener(TweenEvent.MOTION_FINISH, fadeOff);
}
//Fade a dot to black
private function fadeOff(e:TweenEvent):void {
var fadeOff:Tween = new Tween(e.target.obj, "alpha", None.easeNone, 1, .2, this.fadeOffTime, true);
}
... more code ...
Может кто-нибудь показать мне, где я иду не так? Эти данные могут помочь:
- Весь этот preloader находится внутри пользовательского класса.
- Лазерные лучи создаются полностью кодом, без доступа к библиотеке.
Пожалуйста, дайте мне знать, если я могу предоставить более подробную информацию. Я вознагражу за хороший ответ / отзыв как можно большим количеством баллов.
Спасибо за ваше время!