Actionscript 3 ActionScript 3.0扩充错误#2015:无效的BitmpData

Actionscript 3 ActionScript 3.0扩充错误#2015:无效的BitmpData,actionscript-3,Actionscript 3,我在测试运行中遇到了这个错误。我不知道是什么引起的 产出: ArgumentError:错误#2015:位图数据无效 在flash.display::BitmapData/ctor()中 at flash.display::BitmapData() 在com.efg.framework::BlitSprite()上 在com.efg.framework::tilebytelblitsprite()上 在com.efg.games.notanks::GameDemoIteration1/init(

我在测试运行中遇到了这个错误。我不知道是什么引起的

产出:

ArgumentError:错误#2015:位图数据无效

在flash.display::BitmapData/ctor()中

at flash.display::BitmapData()

在com.efg.framework::BlitSprite()上

在com.efg.framework::tilebytelblitsprite()上

在com.efg.games.notanks::GameDemoIteration1/init()上

在com.efg.games.notanks::GamedDemoIteration1()上

如果尝试使用无效数据创建BitmapData,则会引发BitmapData/ctor()。所以问题就在这里


开始使用调试器和断点查看要传递给这些类的参数。我们不是魔术师,也无法猜测:)

将您发布的代码量减少到再现问题所需的最低限度。我真的不知道出了什么问题。这是所有被错误通知标记的文件。转到Flash中的Control>Test Movie>(或Ctrl/Command+Shift+Enter/Return)进行调试,并粘贴到它说给您带来麻烦的行中。这就是所谓的“代码墙”,但您的帖子缺少实际正在做任何值得注意的事情的相关类。例如,TileByLeblitSprite只调用super(),因此这没有用处。您需要检查TankSheepPng是否工作正常,是否有有效的位图要加载。通常通过不绘制bitmapData对象或将宽度和高度设置为0来获得此错误。看起来后者可能不是这样,所以您需要验证TankSheepPng是否正确设置。我清理了代码,只留下了我认为与问题相关的内容
        bitmapData = new BitmapData(tileWidth, tileHeight, true, 0x00000000);
        bitmap = new Bitmap(bitmapData);
        bitmap.x = -.5 * tileWidth;
        bitmap.y = -.5 * tileHeight;
        addChild(bitmap);
        currentTile = firstFrame;
        renderCurrentTile(true);