我看了源码 貌似没有发现可以推object进栈给lua调用的
Activity
vimfung commentedon Apr 29, 2020
任何非ExportType对象传到lua都会被会以userdata包装,如果不在lua中进行原生对象的操作,仅仅作为传递对象使用的话,这样是可以的。
sapoiuyt commentedon Apr 29, 2020
我尝试了Android 的2.4 版本,用setGlobal 使用string的类型没问题,但是传Object 出现nil报错
vimfung commentedon Apr 29, 2020
如果出现nil就是不正常的,我先看看是什么问题
sapoiuyt commentedon Apr 29, 2020
早些休息吧,有时间再处理。 辛苦了
vimfung commentedon Apr 29, 2020
😄
vimfung commentedon May 10, 2020
你好,这个问题我测试了一下并没发现存在问题,能告诉我具体你的代码和系统版本吗?以下是我测试的代码片段:
输出是没有问题的
sapoiuyt commentedon May 11, 2020
FreeSpace freeSpace =新的FreeSpace();
LuaValue value =new LuaValue(freeSpace);
_luaContext.setGlobal(“ F”,value);
在lua的脚本文件调用F变量出现报错了
注冊全局類變量必須implements LuaExportType嗎?
vimfung commentedon May 12, 2020
请问您说的调用是怎么调用呢?如果是要调用FreeSpace里面的属性或者方法是必须要实现LuaExportType的,如果仅仅是作为参数传递是没有问题的。例如在原生层registerMethod一个方法,然后把这个F传入这个方法是可行的。