我使用 EFL 库为 Tizen 平台开发应用程序。我需要为硬件按钮“返回”实现事件处理程序。
在本机 Tizen API 中,它非常简单。但我不知道如何在 EFL 库中做到这一点。
我尝试使用以下方式进行操作:
evas_object_event_callback_add( obj, EVAS_CALLBACK_KEY_DOWN, on_key_down, NULL );
但它不起作用。
有人可以帮我吗?
我使用 EFL 库为 Tizen 平台开发应用程序。我需要为硬件按钮“返回”实现事件处理程序。
在本机 Tizen API 中,它非常简单。但我不知道如何在 EFL 库中做到这一点。
我尝试使用以下方式进行操作:
evas_object_event_callback_add( obj, EVAS_CALLBACK_KEY_DOWN, on_key_down, NULL );
但它不起作用。
有人可以帮我吗?
而不是 EVAS_CALLBACK_KEY_DOWN and
evas_object_event_callback_add()`,
ea_object_event_callback_add
EA_CALLBACK_BACK
返回按钮EA_CALLBACK_MORE
但您需要包含一个头文件,不幸的是我忘记了头文件名某些东西efl-util.h之类的东西,您可以在头文件中进行搜索AFAIK 事情是 EFL 使用队列来处理事件。这意味着回调被一个一个调用:第一个应该返回 PASS_ON (或其他东西),以便下一个回调运行相同的事件。
因此,可能存在另一个不允许分派事件的回调。
尝试
Ecore_Event_Handler *handler;
handler = ecore_event_handler_add(ECORE_EVENT_KEY_DOWN, hardware_key_down_cb, NULL);
在hardware_key_down_cb()回调函数中,检查键名' XF86Stop'Ecore_Event_Key来处理返回键事件。
使用 eext_object_event_callback_add(Evas_Object * obj,eext_callback_type type,callback_fun,NULL) 并在回调函数中编写您的要求