android学习笔记转-------上下左右与返回键的按键捕捉事件
2446 点击·0 回帖
![]() | ![]() | |
![]() | 键盘中的上下左右与返回键。可以直接监听,不需要在xml或者其他地方注册。 主要方法是: public boolean onKeyDown(int kCode,KeyEvent kEvent) { switch(kCode) { case KeyEvent.KEYCODE_DPAD_LEFT: return true; case KeyEvent.KEYCODE_DPAD_UP: return true; case KeyEvent.KEYCODE_DPAD_RIGHT: return true; case KeyEvent.KEYCODE_DPAD_DOWN: return true; case KeyEvent.KEYCODE_DPAD_CENTER: return true; case KeyEvent.KEYCODE_BACK: return false; } return super.onKeyDown(kCode,kEvent); } 具体实现例子是: package com.ldci.logger; import Android.app.Activity; import Android.os.Bundle; import Android.util.Log; import Android.view.KeyEvent; public class MyKeyDown extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public boolean onKeyDown(int kCode,KeyEvent kEvent) { switch(kCode) { case KeyEvent.KEYCODE_DPAD_LEFT: Log.v("MyKeyDown","onkeydown=left"); return true; case KeyEvent.KEYCODE_DPAD_UP: Log.v("MyKeyDown","onkeydown=up"); return true; case KeyEvent.KEYCODE_DPAD_RIGHT: Log.v("MyKeyDown","onkeydown=right"); return true; case KeyEvent.KEYCODE_DPAD_DOWN: Log.v("MyKeyDown","onkeydown=down"); return true; case KeyEvent.KEYCODE_DPAD_CENTER: Log.v("MyKeyDown","onkeydown=center"); return true; case KeyEvent.KEYCODE_BACK: Log.v("MyKeyDown","onkeydown=where"); return false; } return super.onKeyDown(kCode,kEvent); } } 直接写在代码中,就可以测试了。 | |
![]() | ![]() |