如何使用EFL库处理Tizen平台上的硬件按钮"Back"



我使用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类型,callback_fun,NULL)在回调函数中,您可以编写您的需求

相关内容

  • 没有找到相关文章

最新更新