How to embed iPhone-Wax into app

2020-06-08 10:23发布

问题:

I have just learnt about iPhone-Wax (thanks to SO). Now the documentation is rather sparse for what I am trying to do.

I want to embed it into an Objective-C app. I don't want it to be the main app. Has anyone done it and how can I achieve it?

I would like to use it in the same way LuaObjectiveCBridge is used.

回答1:

If I understand correctly, you want to create an ad-hoc Lua class?! It is as simple as this:

you have a Lua script (script.lua):

waxClass{"LuaClass"}
function myMethod(self, object)
 object:doSomething()
end

and in your obj-c code:

...
luaL_dofile(wax_currentLuaState(), "script.lua");
MyClass *o = [[MyClass alloc] init];
Class LuaClass = NSClassFromString(@"LuaClass");
id luaObject = [[LuaClass alloc] init];
[luaObject performSelector:@selector(myMethod:) withObject:o];
...

Check this gist wrote by Corey.