尝试索引up值,这是一个零值

时间:2014-03-12 08:58:13

标签: lua corona

错误"尝试索引up值“askUser'(零值)"总是出现,我不得不发表评论来运行应用程序,我该如何解决?

function restartLvl()  
        for i = 1, #balloonTexts do
        display.remove(balloonTexts[i])
        print ("restart level")
    end
    score.text = '0'
    ballRemain.text = '3'
    balloonText = {}
    createBalloons(1, 3)
    if (askUser.isVisible == true) then --this is where the error occured
    askUser.isVisible = false
    end
    if (yesBtn.isVisible == true) then
    yesBtn.isVisible = false
    end
    if (noBtn.isVisible == true) then
    noBtn.isVisible = false
    end

    print("time from start: ", (system.getTimer()-gameTime))
    print('send mail')
    sendMail()
    restartBtn:removeEventListener('tap', restartLvl)

end

3 个答案:

答案 0 :(得分:2)

该消息告诉您askUser是在restartLvl之外定义的局部变量,askUser为零,因此无法编入索引。

当你不期望askUser为零时,你必须找出原因。{/ p>

答案 1 :(得分:0)

你需要给askUser.isVisible一个值。 例如:

askUser = blablabla
askUser.x = blablabla
aksUser.y = bablabla

askUser.isVisible = false

group:insert(askUser)

PS:我们不知道有一个isVisible var:P 我一直使用askUser.alpha = 0

答案 2 :(得分:0)

从视图中删除对象之前检查nil

例如

 local try    --object on which you are working
    if(try==nil)then
       --do nothing
   else
      --do here what u want to do
   end

我也遇到了同样的问题,在我看来这是代码工作。