AS3横版卷轴游戏中如何显示移动sprite?库中myRocket无法显示问题
问题原因
你只声明了myRocket变量但没有完成实例化,也没有关联到库中的资源,添加空引用到显示列表自然不会渲染出内容。
解决步骤
- 第一步:配置库资源导出
右键库中的myRocket资源,选择「属性」,勾选为ActionScript导出,类名填写MyRocket,基类保持默认的flash.display.MovieClip,如果弹出“找不到类定义”的提示直接点击确定即可。 - 第二步:修改代码完成实例化
把代码中var myRocket:MovieClip;替换为实例化逻辑:var myRocket:MovieClip = new MyRocket(); - 第三步:补充缺失的导入与函数调用
你当前代码缺少事件类的导入,且KeyboardDemo函数没有主动调用,需要做两处修改:- 代码开头补充导入声明:
import flash.events.MouseEvent; import flash.events.KeyboardEvent;- 在代码末尾添加一行调用逻辑,触发键盘监听绑定:
KeyboardDemo(); - 额外优化:你代码中存在两次
addChild(myRocket)的重复操作,删除其中任意一次即可,避免重复添加报错。
修改完成后重新编译运行,就能正常显示火箭并响应键盘操作了。
内容的提问来源于stack exchange,提问作者Cameron
相关产品推荐
相关产品推荐

