在lua,corona sdk中定义函数时出错

时间:2012-09-02 21:30:22

标签: function sdk lua corona

请帮我弄清楚代码中的问题。 我正在定义一个函数

local function goOnLesson()
   if date.hour==1  then
   index=1
   local subj=schToday[index]
   local text = display.newRetinaText("А сейчас у тебя: "..subj, 0, 0, native.systemFont, 70)
   text:setTextColor(128,64,0)
   text:setReferencePoint(display.CenterReferencePoint)
   localGroup:insert(text)
   end
end

当我运行它时,一切都很好。

我重新整理了代码,我不再需要if block

local function goOnLesson()
   index=1
   local subj=schToday[index]
   local text = display.newRetinaText("А сейчас у тебя: "..subj, 0, 0, native.systemFont, 70)
   text:setTextColor(128,64,0)
   text:setReferencePoint(display.CenterReferencePoint)
   localGroup:insert(text)
end

我刚删除了if-end块,但现在它无法正常工作。 请帮助:)

1 个答案:

答案 0 :(得分:1)

当执行Corona事件期间出现运行时错误时,此错误似乎是一般消息。我发现了几个对同一问题的引用(例如,here)。

schToday可能没有任何元素,并且您的subj变量获得一个nil值,然后在字符串连接时失败。您原始代码可能“有效”,因为它没有进入该部分(您的day.hour == 1条件在大多数时间返回“false”。

我建议您仔细检查您的代码,以确保它能够正常运行。

要尝试的另一件事是本地化您的index变量。您可能会为其分配一个值,该值会破坏程序其他部分的内容。