1
我試圖在另一個函數中將函數作爲參數傳遞。Lua/Corona - 如何傳遞函數作爲參數,然後調用該函數
高級別我有創建一個彈出窗口的代碼。當我用新文本更新彈出窗口時,我還想更新用戶單擊彈出窗口時發生的操作。例如,我第一次更新彈出窗口時,我可能會將該操作更改爲用新文本再次顯示彈出窗口。當用戶點擊第二
下面是一些示例代碼來說明這個概念
function doSomething()
print("this is a sample function")
end
function createPopup()
local popup = display.newRect ... create some display object
function popup:close()
popup.isVisible = false
end
function popup:update(options)
if options.action then
function dg:touch(e)
-- do the action which is passed as options.action
end
end
end
popup:addEventListener("touch",popup)
return popup
end
local mypopup = createPopup()
mypopup:update({action = doSomething()})
不應該在表構造函數中調用'doSomething';只需將該字段設置爲函數值本身:'{action = doSomething}'。 –
我沒有看到那個 – NaviRamyle
太棒了,我能夠得到這個工作! –