【发布时间】:2015-07-12 14:36:37
【问题描述】:
我正在寻找一种简单快捷的方法来清除整个 Phaser 屏幕,例如在 HTML5 画布中如何通过将画布的宽度重置为自身来擦除所有内容。我无法通过搜索找到任何这样的方法 - 只有 graphics.clear(),但这不会影响文本对象等其他内容。有没有这样的清屏方法?
谢谢。
【问题讨论】:
标签: html screen phaser-framework stage
我正在寻找一种简单快捷的方法来清除整个 Phaser 屏幕,例如在 HTML5 画布中如何通过将画布的宽度重置为自身来擦除所有内容。我无法通过搜索找到任何这样的方法 - 只有 graphics.clear(),但这不会影响文本对象等其他内容。有没有这样的清屏方法?
谢谢。
【问题讨论】:
标签: html screen phaser-framework stage
@FabiánRodríguez 回答,但您也可以使用要删除的对象创建数组或对象文字,因此请迭代并删除每个对象。这就是您想要对对象进行分组的时候。
var layout = {
rect: new Phaser.Rectangle(0, 0, 200, 200)
};
for(var i in layout) {
layout[i].kill();
layout[i].remove();
}
【讨论】:
有一些方法可以销毁特定元素 - obj.kill() 和 obj.destroy() - 但可以通过调用 game.world.removeAll() 删除所有元素。
【讨论】: