1. c#端寫乙個方法,最後乙個需要是callback, 可以支援帶引數
public static void showconfirmbox(string message, string title, actiononfinished = null)
2. 用util.async_to_sync定義乙個lua的變數與c#繫結
local sync_confirm = util.async_to_sync(cs.xluatest.messagebox.showconfirmbox)
3. 呼叫local ret = sync_confirm(message, title), 它的返回值就是1中最後的callback的引數
4. 定義協程方法
local buy = function()
message_box.alert("您餘額不足,請充值!", "餘額提醒")
if message_box.confirm("確認充值10元嗎?", "確認框") then
local r1, r2 = recharge(10)
print('recharge result:', r1, r2)
message_box.alert("充值成功!", "提示")
else
print('cancel')
message_box.alert("取消充值!", "提示")
endprint('recharge finished')
end
5. 啟動協程
util.coroutine_call(buy)
這時候我們定義的showconfirmbox,就相當於是協程階段的乙個步驟,走到這一步就會等待callback才會繼續走下去
xlua學習之路(二)xlua基礎
1.執行字串 xlua.luaenv luaenv new xlua.luaenv luaenv.dostring cs.unityengine.debug.log hello world luaenv.dispose 1 dostring引數為string,可輸入任意合法的lua 本示例在lua裡...
Xlua 學習記錄(一)Xlua 案例學習
有空看了下lua,研究下xlua。筆記如下 void start 1 dostring引數為string,可輸入任意合法的lua 本示例在lua裡呼叫c 的unityengine.debug.log列印了個日誌。2 乙個luaenv例項對應lua虛擬機器,出於開銷的考慮,建議全域性唯一。考慮全域性唯...
xlua 物件導向
lua物件導向設計 儲存類型別的虛表 local class local classname classtype function baseclass classname,super assert type classname string and classname 0 生成乙個類型別 local...