在开发项目的过程中,界面需要设置坐标,为了便于管理图片的起始坐标我写到了类的方法外面,然后根据需要在类方法中对startX、posY、betweenX、betweenY等进行运算修改。
)
local className = class("className" , function()
return display.newColorLayer(cc.c4b(0,0,0,122))
end)
_className = nil
local startX = 320
local posY = 490
local betweenX = 240
local betweenY = 40
原来我的理解是通过下面的方法每次添加删除之后,startX、posY、betweenX、betweenY等的值会被重新赋值,但是在实际运行中发现,require过一次之后,startX、posY、betweenX、betweenY这些值不会再被重新赋值,而是上一次调用时运算过后的值,这个使我的界面在显示的时候出现了bug。(
ps:造成这个原因主要是我对require的原理和lua的闭包不熟悉
function className.popOut()
className.popIn()
_className = className.new()
local scene = display.getRunningScene()
scene:addChild(_className ,100000)
e