我正在使用minko和 html-overlay 功能。在我的叠加 onload()->connect() 方法中,我有以下语句:
...
gameInterfaceDom = dom;
but1 = gameInterfaceDom->getElementById("id_but1"); //trouble here !
but2 = gameInterfaceDom->getElementById("id_but2");
LOG_INFO("Going to bind onclick events...");
if( but1 != nullptr )
{
onBut1 = but1->onclick()->connect(
[](dom::AbstractDOMMouseEvent::Ptr event)
{
// do something...
LOG_INFO("clicked button 1");
});
}
if( but2 != nullptr )
{
onBut2 = but2->onclick()->connect(
[](dom::AbstractDOMMouseEvent::Ptr event)
{
// do something...
LOG_INFO("clicked button 2");
});
}
...
即使加载的 html 不包含 but1 和 but2 ID,在 linux64 下编译和运行也能完美运行,但是,对于 Android 和 web / HTML5(如果未找到预期的 ID),相同的代码会崩溃,并出现以下错误:
exception thrown: TypeError: Minko.tmpElement is null
这种情况是否有解决方法,或者是否必须在 html 中定义 c++ 中的预期 ID?
谢谢。