所以我在我的CoronaIbeaconDelegate @interface之后定义一个变量,如下所示:
TextBox
稍后在我的Corona Plugin类代码中,我创建了一个CoronaIBeaconDelegate的实例,如下所示:
CoronaIBeaconDelegate *coronaIBeaconDelegate;
这样可以正常工作,但是当我将代理存储在coronaIBeaconDelegate变量中时,我会收到警告说"找不到实例方法-firstRegion"但是这将按预期调用类函数firstRegion并且我的IBeacon代码开始扫描。
我想要做的是能够在CoronaIBeaconDelegate类中调用另一个名为stopRangingForBeacons的函数,所以使用前面的实例:
int
PluginLibrary::scan( lua_State *L )
{
int listenerIndex = 1;
coronaIBeaconDelegate = [[CoronaIBeaconDelegate alloc] firstRegion];
if ( CoronaLuaIsListener( L, listenerIndex, kEvent ) )
{
Self *library = ToLibrary( L );
CoronaLuaRef listener = CoronaLuaNewRef( L, listenerIndex );
library->Initialize( listener );
// Create event and add message to it
CoronaLuaNewEvent( L, kEvent );
lua_pushstring(L,"scan");
lua_setfield(L, -2, "phase" );
lua_pushboolean(L,true );
lua_setfield(L, -2, "scanning" );
lua_pushstring( L, "Scanning Started" );
lua_setfield( L, -2, "message" );
// Dispatch event to library's listener
CoronaLuaDispatchEvent( L, library->GetListener(), 0 );
}
return 0;
}
发生的是一个空错误。我试图将前一个实例存储在coronaIBeacon变量中,但它不起作用。我真的无法承担这个简单的任务。
请帮忙谢谢?
答案 0 :(得分:0)
按照惯例,我回答我自己的问题。我的问题是由于我初始化我的实例的方式。这是我的正确方法。
IBeaconDelegate = [[CoronaIBeaconDelegate alloc] init];
[IBeaconDelegate firstRegion];