public class CoronaLua extends Object
LuaState
的便捷函数。您应该在 CoronaRuntimeTask
内部调用这些方法,以确保对 LuaState
的修改发生在 Corona 线程上。
修饰符和类型 | 字段和描述 |
---|---|
静态 int |
NOREF
用于将引用标记为无效。
|
静态 int |
REFNIL
在对 nil 值调用
LuaState.ref(int) 时返回。 |
构造器和描述 |
---|
CoronaLua() |
修饰符和类型 | 方法和描述 |
---|---|
静态 void |
deleteRef(LuaState L, int ref)
释放对 Lua 值的 Java 端引用,否则将阻止 Lua 值被垃圾回收。
|
静态 void |
dispatchEvent(LuaState L, int listenerRef, int nresults)
通过调用与listenerRef对应的侦听器来分派事件,并将栈顶的值作为 Corona 事件表传递。
|
静态 void |
dispatchRuntimeEvent(LuaState L, int nResults)
|
静态 boolean |
isListener(LuaState L, int index, String eventName)
返回位于index处的函数是否为 Corona 侦听器。
|
静态 void |
newEvent(LuaState L, String eventName)
创建一个 Corona 事件,并将name属性设置为eventName.
|
静态 int |
newRef(LuaState L, int index)
在 Lua 栈 的index.
|
静态 int |
normalize(LuaState L, int index)
返回 Lua 栈上传递的index.
|
静态 void |
pushHashtable(LuaState L, Hashtable<Object,Object> hashtable)
|
静态 void |
pushValue(LuaState L, Object object)
|
静态 Hashtable<Object,Object> |
toHashtable(LuaState L, int index)
|
静态 Object |
toValue(LuaState L, int index)
返回指定索引处项的
Object 。 |
public static final int REFNIL
LuaState.ref(int)
时返回。public static final int NOREF
添加于 2013.1227 日常构建版本.
public static int normalize(LuaState L, int index)
public static int newRef(LuaState L, int index)
public static void deleteRef(LuaState L, int ref)
L
- 要操作的 LuaState
。ref
- 要释放的 Java 端引用。public static void dispatchEvent(LuaState L, int listenerRef, int nresults) throws Exception
newEvent()
来创建此事件。此函数将从 Lua 栈 的顶部 *弹出* 值!
L
- 要操作的 LuaState
。listenerRef
- CoronaLua.newRef()
返回的引用标识符。nresults
- 要分派到 事件 的结果数量。Exception
public static boolean isListener(LuaState L, int index, String eventName)
public static void dispatchRuntimeEvent(LuaState L, int nResults)
L
- 运行时(Runtime) 对象的 LuaState
。nResults
- Lua 侧返回的结果数量。