Я импортировал ресурс изображения (Background.jpg) в свою библиотеку Flash CS5 и экспортировал его в ActionScript как класс Bitmap с базовым типом BitmapData.
следующий код возвращает следующую ошибку:
backgroundTexture = new Shape();
backgroundTexture.graphics.beginBitmapFill(Background);
backgroundTexture.graphics.drawRect(0, 0, stage.stageWidth, stage.stageHeight);
backgroundTexture.graphics.endFill();
1067: Неявное приведение значения типа Class к несвязанному типу flash.display: BitmapData.
так в чем же ошибка?
Ответ 1 · рейтинг 1 · zzzzBov
Вам просто нужен экземпляр объекта Background BitmapData:
backgroundTexture.graphics.beginBitmapFill(new Background());
Background - это ссылка на класс. new Background() создает экземпляр класса.
Ответ 2 · рейтинг 1 · Michael Brewer-Davis
У меня больше опыта работы с Flex, чем с Flash, поэтому я не знаю деталей пользовательского интерфейса, но я считаю, что вам нужно:
var background:BitmapAsset = new Background() as BitmapAsset;
backgroundTexture.graphics.beginBitmapFill(background.bitmapData);
Предполагается, что ваш пользовательский интерфейс генерирует следующий код ActionScript или его эквивалент:
[Embed(source="Background.jpg")]
public var Background:Class;
Видеть:
- http://www.adobe.com/devnet/flash/quickstart/loading_images_library_as3.html
- http://livedocs.adobe.com/flex/3/html/help.html?content=embed_4.html