Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
as3_learning.pdf
Скачиваний:
43
Добавлен:
21.05.2015
Размер:
1.8 Mб
Скачать

ИЗУЧЕНИЕ ACTIONSCRIPT 3.0

107

Объектно-ориентированное программирование на языке ActionScript

function getDay():Day

{

var date:Date = new Date(); var retDay:Day;

switch (date.day)

{

case 0:

retDay = Day.MONDAY; break;

case 1:

retDay = Day.TUESDAY; break;

case 2:

retDay = Day.WEDNESDAY; break;

case 3:

retDay = Day.THURSDAY; break;

case 4:

retDay = Day.FRIDAY; break;

case 5:

retDay = Day.SATURDAY; break;

case 6:

retDay = Day.SUNDAY; break;

}

return retDay;

}

var dayOfWeek:Day = getDay();

Кроме того, класс Day можно расширить, чтобы он связывал целое число с каждым днем недели и определял метод toString(), возвращающий строковое представление дня.

Классы встроенных ресурсов

В языке ActionScript 3.0 используются особые классы для представления встроенных ресурсов, называемые классами встроенных ресурсов. Встроенный ресурс — это ресурс, такой как звук, изображение или шрифт, включенный в SWF-файл во время компиляции. Встраивание ресурса вместо его динамической загрузки гарантирует его доступность во время выполнения, однако за счет увеличения размера SWF-файла.

Использование классов встроенных ресурсов в инструменте Flash Professional

Чтобы встроить ресурс, сначала поместите его в библиотеку FLA-файла. Затем используйте свойство связывания ресурса, чтобы передать имя для его класса встроенных ресурсов. Если класса с таким именем нет в пути к классам, он создается автоматически. После этого можно создать экземпляр класса встроенных ресурсов и использовать любые определенные или унаследованные им свойства и методы. Например, следующий код можно использовать для воспроизведения встроенного звука, связанного с классом встроенных ресурсов PianoMusic.

var piano:PianoMusic = new PianoMusic(); var sndChannel:SoundChannel = piano.play();

Последнее обновление 12.5.2011.

ИЗУЧЕНИЕ ACTIONSCRIPT 3.0

108

Объектно-ориентированное программирование на языке ActionScript

В противном случае можно использовать тег метаданных [Embed] для встраивания ресурсов в проект Flash Professional, как описано далее. Если в коде используется тег метаданных [Embed], в инструменте Flash Professional для компиляции проекта используется компилятор Flex, а не компилятор Flash Professional.

Использование классов встроенных ресурсов с помощью компилятора Flex

При компиляции кода с помощью компилятора Flex для встраивания ресурса в код ActionScript используйте тег метаданных [Embed]. Поместите ресурс в основной исходной папке или в другой папке, включенной в путь сборки проекта. Когда компилятор Flex обнаружит тег метаданных Embed, он создаст класс встроенных ресурсов. Обратиться к классу можно через переменную типа данных Class, объявленную сразу после тега метаданных [Embed]. Например, следующий код встраивает звук с именем sound1.mp3 и использует переменную soundCls для хранения ссылки на класс встроенных ресурсов, связанный с этим звуком. После этого создается экземпляр класса встроенных ресурсов, для которого вызывается методplay().

package

{

import flash.display.Sprite; import flash.media.SoundChannel; import mx.core.SoundAsset;

public class SoundAssetExample extends Sprite

{

[Embed(source="sound1.mp3")] public var soundCls:Class;

public function SoundAssetExample()

{

var mySound:SoundAsset = new soundCls() as SoundAsset; var sndChannel:SoundChannel = mySound.play();

}

}

}

Adobe Flash Builder

Чтобы использовать тег метаданных [Embed] в проекте Flash Builder ActionScript, импортируйте все необходимые классы из среды Flex. Например, чтобы встроить звуки, импортируйте класс mx.core.SoundAsset. Чтобы использовать систему Flex, включите файл framework.swc в путь сборки ActionScript. Это приводит к увеличению размера SWF-файла.

Adobe Flex

В противном случае в среде Flex ресурс можно встроить с помощью директивы @Embed() в определении тега MXML.

Последнее обновление 12.5.2011.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]