Перемещение элементов вверх и вниз по списку отображения может быть очень полезным при разработке игр и приложений. Научитесь легко управлять глубиной, используя эту подсказку.
Окончательный результат предварительного просмотра
Давайте посмотрим на конечный результат, к которому мы будем стремиться:
Щелкните значок, чтобы выбрать его и перенести в верхнюю часть списка отображения, затем используйте две кнопки, чтобы переместить его ниже в иерархии.
Шаг 1: Краткий обзор
Используя ActionScript 3, мы научимся управлять верхним, нижним и промежуточным уровнями глубины.
Шаг 2: Настройте файл Flash
Запустите Flash и создайте новый Flash-документ, установите размер сцены 320x200px и частоту кадров 24fps.
Шаг 3: Интерфейс
Это интерфейс, который мы будем использовать, ряд кнопок на стадии, которые активируют изменение глубины.
Преобразуйте символы в кнопку и назовите логотипы Tuts + следующим образом: nt, at, pt . Для других кнопок имена экземпляров — bottomB и oneB .
Шаг 4: ActionScript
Создайте новый класс ActionScript (Cmd + N), сохраните файл как Main.as и напишите следующие строки, пожалуйста, прочитайте комментарии в коде, чтобы полностью понять поведение класса.
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
package
{
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.filters.GlowFilter;
public final class Main extends Sprite
{
private var lastItem:Sprite;
private var glow:GlowFilter = new GlowFilter(0xFF9900);// a glow filter to highlight the last item
public final function Main():void
{
lastItem = nt;
addListeners();
}
private final function addListeners():void
{
at.addEventListener(MouseEvent.MOUSE_DOWN, up);
pt.addEventListener(MouseEvent.MOUSE_DOWN, up);
nt.addEventListener(MouseEvent.MOUSE_DOWN, up);
oneB.addEventListener(MouseEvent.MOUSE_UP, downOne);
bottomB.addEventListener(MouseEvent.MOUSE_UP, bottom);
}
private final function up(e:MouseEvent):void
{
lastItem.filters = [];
lastItem = e.target as Sprite;
lastItem.filters = [glow];
setChildIndex(lastItem, numChildren — 1);//get next highest depth
}
private final function downOne(e:MouseEvent):void
{
if(getChildIndex(lastItem) != 0)//prevent out of bounds
{
setChildIndex(lastItem, getChildIndex(lastItem) — 1);//down one level
}
}
private final function bottom(e:MouseEvent):void
{
setChildIndex(lastItem, 0);//bottom
}
}
}
|
Шаг 5: Класс документа
Добавьте имя класса в поле « Класс» в разделе « Публикация » на панели « Свойства», чтобы связать FLA с классом основного документа .
Вывод
Используйте то, что вы узнали из этой подсказки, в своих играх и приложениях!
Надеюсь, вам понравился этот Quick Tip, спасибо за чтение!