0

我正在处理的子类有问题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;                                                                                                                                                                      
        }
}   
4

1 回答 1

0

添加实现 KeyEvent.Callback

public class @activity@ extends NativeActivity implements KeyEvent.Callback  {
   public boolean onKeyMultiple (int keyCode, int count, KeyEvent event)
}

KeyEvent.Callback 覆盖发生在本机 AInputEvent 调度之后;所以基本上你必须忽略所有旧的 dipatching 并实现一些新的,如果你想得到扩展键,比如 ÷,√,€,£,...

于 2015-09-07T12:36:50.903 回答