2012-04-27 82 views
0

我有一個menu LUA,當我選擇1類(以下簡稱「songselect」 LUA),並回到menu LUA我得到這個錯誤:如何從另一個lua文件返回lua文件?

Runtime error 
     ...ocuments\corona projects\singingbeemenu\director.lua:151: attempt to 
call field 'unloadMe' (a nil value) 
stack traceback: 
     [C]: in function 'unloadMe' 
     ...ocuments\corona projects\singingbeemenu\director.lua:151: in function 
'_listener 

' 這是我的類別1 songselect.lua

module(..., package.seeall) 
display.setStatusBar(display.HiddenStatusBar) 
function new() 
    local localGroup = display.newGroup() 
    local tableView = require("tableView") 
    local ui = require("ui") 

    -------------------------------------------------------------------------- 
    local screenOffsetW, screenOffsetH = display.contentWidth - display.viewableContentWidth, display.contentHeight - display.viewableContentHeight 

    local songList 
    local backBtn 
    local detailScreenText 


    local background = display.newRect(0, 0, display.contentWidth, display.contentHeight) 
    background:setFillColor(0, 0, 0) 


    local data = {} 
    --iPad: setup a color fill for selected items 
    local selected = display.newRect(0, 0, 50, 50) --add acolor fill to show the selected item 
    selected:setFillColor(67,141,241,180) --set the color fill to light blue 
    selected.isVisible = false --hide color fill until neede 

    ----------------------------------------------- 
    data[1] = {} 
    data[1].title = "Crazy Song" 
    data[1].subtitle = "by Bruno Earth" 
    data[1].image = "note.png" 

    data[2] = {} 
    data[2].title = "Enter Sunman" 
    data[2].subtitle = "by Mentalica" 
    data[2].image = "note.png" 

    local topBoundary = display.screenOriginY + 40 
    local bottomBoundary = display.screenOriginY + 0 

    songList = tableView.newList{ 
     data=data, 
     default="listItemBg.png", 
     over="listItemBg_over.png", 
     top=topBoundary, 
     bottom=bottomBoundary, 
     callback = function(row) 
      local g = display.newGroup() 

      local img = display.newImage(row.image) 
      g:insert(img) 
      img.x = math.floor(img.width*0.5 + 6) 
      img.y = math.floor(img.height*0.5) 

      local title = display.newText(row.title, 0, 0, native.systemFontBold, 16) 
      title:setTextColor(0,0,0) 
      g:insert(title) 
      title.x = title.width*0.5 + img.width + 6 
      title.y = 30 

      local subtitle = display.newText(row.subtitle, 0, 0, native.systemFont, 14) 
      subtitle:setTextColor(80,80,90) 
      g:insert(subtitle) 
      subtitle.x = subtitle.width*0.5 + img.width + 6 
      subtitle.y = title.y + title.height + 6 

      return g 
     end 
    } 

    local function scrollToTop() 
     songList:scrollTo(topBoundary-1) 
    end 

    local navBar = display.newImage("navBar.png") 

    navBar.x = display.contentWidth*.5 
    navBar.y = math.floor(display.screenOriginY + navBar.height*0.5) 

    local navHeader = display.newText("Song Lists", 0, 0, native.systemFontBold, 16) 
    navHeader:setTextColor(255, 255, 255) 
    navHeader.x = display.contentWidth*.5 
    navHeader.y = navBar.y 

    --Setup the back button 
    local backToMenu = function(event) 
     print (event.phase) 

     if event.phase == 'ended' then 
      print ("ok") 
      director:changeScene(event.target.scene, "fade") 
      print ("back!") 

     end 
    end 

    backBtn = display.newImage("backButton.png") 
    backBtn.x = math.floor(backBtn.width/2) + backBtn.width + screenOffsetW 
    backBtn.y = navBar.y 
    backBtn.scene = "menu" 
    backBtn:addEventListener("touch", backToMenu) 
    --backBtn.alpha = 0 

    local listBackground = display.newRect(0, 0, songList.width, songList.height) 
    listBackground:setFillColor(255,255,255) 
    songList:insert(1,listBackground) 

    return localGroup 
end 

是不可能在LUA的go back方法?

任何人都可以幫助我,並給出一個想法,爲什麼我得到了錯誤?

在此先感謝...

回答

0

我得到這個,我改變我的director.lua到最新版本...