我有以下問題,有人可以幫助我嗎?Lua Metatables - 用冒號語法調用函數
comp = {}
comp.__index = function(obj,val)
if val == "insert" then
return rawget(obj,"gr")["insert"]
end
return rawget(obj, val)
end
comp.new = function()
local ret = {}
setmetatable(ret, comp)
ret.gr = display.newGroup()
return ret
end
local pru = comp.new()
pru.gr:insert(display.newImage("wakatuBlue.png"))
- 這條線的工作,但我不希望使用gr
屬性來訪問插入的方法,我想直接調用插件的方法和元表__index
功能做的工作
pru:insert(display.newImage("wakatuBlue.png"))
- 此行不起作用,我有一個"bad argument #-2 to 'insert' (Proxy expected, got nil)"
錯誤,這是我期待使用的方式
您應該在您的描述中提到該代碼適用於Corona SDK。 –