使用Flashbuilder 4.7在ActionScript for Mobile项目中使用包含另一个MovieClip的MovieClip嵌入SWF时出现错误#1056

时间:2012-10-13 06:40:10

标签: actionscript air flash-builder

我在Flashbuilder 4.7中使用AIR 3.4为Android编译了一个Actionscript Mobile项目。 (AIR SDK位置:C:\ Program Files \ Adob​​e \ Adob​​e Flash Builder 4.7 \ eclipse \ plugins \ com.adobe.flash.compiler_4.7.0.345990 \ AIRSDK)

我最近从AIR 3.2重新启动了该项目,并遇到了新的运行时错误。 我从SWF导入MovieClip资产(truck_anm_mc)(最初从Flash CS3发布 - 在AS3中,但使用Flash CS6重新发布)。 “truck_anm_mc”MovieClip包含另一个实例名称为“Flick”的MovieClip。

这是它的导入方式:

    public var _truck_anim      :MovieClip;
    [Embed(source='/assets/blue/animation004.swf#truck_anm_mc')]
    public var TruckAnim            :Class;

这是如何使用的(我已经注释掉了它的所有进一步引用 - 这是使用它的唯一代码行,如果我注释掉这行错误消失了):

    _truck_anim = new TruckAnim() as MovieClip;

这是错误:

ReferenceError: Error #1056: Cannot create property Flick on animation004_swf$915bbdce658b4869e6dc24efe65092b42084086601.
at flash.display::Sprite/constructChildren()
at flash.display::Sprite()
at animation004_swf$915bbdce658b4869e6dc24efe65092b42084086601()
    ...

Flick位于truck_anm_mc的时间轴上。 如果我从时间线上删除Flick,则没有错误。

错误报告无法在Sprite上创建属性Flick,如果truck_anm_mc是Sprite,这对我来说很有意义 - 但它是一个MovieClip,它应该能够附加任意属性。

我已尝试使用和不选中自动声明阶段实例选项创建的SWF。 我没有使用TLF或任何RSL。这是一个非常简单的SWF,只包含一个MovieClip,并在其时间轴上补充了另一个MovieClip动作。

MovieClip都使用MovieClip基础文档类,并由Flash动态创建它们的类。我尝试为truck_anm_mc创建一个文档类 - 并将Flick声明为公共var - 但它没有避免错误。

1 个答案:

答案 0 :(得分:0)

我通过使用不同的方法导入它成功使用了相同的MovieClip资源。我将MovieClip导出到SWC文件中,并从Actionscript Mobile配置文件中引用该文件。以下是该方法的有用教程:

http://www.codeandvisual.com/2009/how-to-import-movieclips-into-a-flash-builder-actionscript-project/