我遇到了我正在处理的NativeActivity
子类的问题,我的目标是从Java代码中捕获和处理关键事件而不是
本机代码(这主要是因为这个原因),遗憾的是我无法看到Log()
方法中存在的onKeyDown
正在打印onCreate()
日志,并且我已经放置在本机代码中的日志打印也是如此。似乎永远不会调用onKeyDown
子类的NativeActivity
。
有什么想法吗?
public class CNativeActivity extends NativeActivity{
private final static String TAG = "CNativeActivity";
protected void onCreate(Bundle savedInstanceState) {
Log.v(TAG, "onCreate");
super.onCreate(savedInstanceState);
}
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.v(TAG, "onKeyDown");
return true;
}
}
答案 0 :(得分:0)
添加实现KeyEvent.Callback
public class @activity@ extends NativeActivity implements KeyEvent.Callback {
public boolean onKeyMultiple (int keyCode, int count, KeyEvent event)
}
KeyEvent.Callback覆盖发生在本机AInputEvent调度之后;所以基本上你不得不忽略所有旧的dipatching并实现一些新的东西,如果你想获得÷,√,€,£等扩展密钥...