我需要将onKeyUp()
/onKeyDown()
事件处理添加到我的应用程序中,其中我没有创建Activity
和主View
。(使用Marmalade SDK应用程序获取OuyaController
)。
对于onGenericMotion()
,它看起来很简单(view.setOnGenericMotionListener()
),但我对view.setOnKeyListener()
感到困惑,因为它作为自变量的android.View.OnKeyListener
的接口只有一个onKey()
方法,而不是onKeyUp()
/onKeyDown()
。
显然,view.KeyEvent.Callback
有这个接口,Activity
和View
实现了这个接口——什么类有这个接口?我如何按程序将其功能添加到View
中?
我认为您不能在任何未创建的活动中添加任何方法或事件处理。最好的解决方案是将"活动"子类化,添加您的修改并使用该类。
onKey方法将向您传递一个KeyEvent。检查getAction()的ACTION_UP、ACTION_DOWN和ACTION_MULTIPLE状态。