这个问题搞死我了……弄了好久才弄好。看上去其实挺唬人的,需要从Lua调到C++,再调到OC,其实仔细分析一下的话还好。我们下面开始讲解:
首先是Lua调到C++(如果直接是C++的项目请无视):首先,我们在项目里建一个ClipboardHelper.cpp,一个ClipboardHelper.hpp(.h的也可)。
.hpp中我们声明一个想让Lua调用的函数:
#ifndef ClipboardHelper_hpp
#define ClipboardHelper_hpp
#include <stdio.h>
#include "cocos2d.h"
class ClipboardHelper {
public:
void copyLua(std::string str);
};
#endif /* ClipboardHelper_hpp */
.cpp中的实现:
#include "ClipboardHelper.hpp"
#include "CCLuaEngine.h"
void ClipboardHelper::copyLua(std::string str) {
CCLOG("%s",str.c_str());
}
在这一步里我们不需要做些什么实质的事情,因为一会儿我们需要在这里调OC。这一步先不涉及。先让Lua能成功调到C++再说。
下面我们再新建两个文件:lua_MyToLua_auto.cpp 和 lua_MyToLu