我们如何和Android 程序来进行交互那份?来让 Android 程序产生相应的反应,我们不得不通过键盘事件、触摸事件、传感器事件等来实现。
键盘是Android中主要的输入设备,对按键的响应的处理是响应之间在程序中使用键盘的核心内容。
键盘事件主要包括:
boolean onKeyDown(int keyCode,KeyEvent event) 在按键按下时调用
boolean onKeyUp(int keyCode,KeyEvent event) 在按键释放时调用
boolean onKeyMultiple(int keyCode,int repeatCount,KeyEvent event) 在多个事件连续时调用,用于按键重复,必须重载@Override实现
onTouchEvent(MotionEvent event) 触摸屏事件,当在触摸屏上有动作时调用
boolean onKeyLongPress(int keyCode, KeyEvent event) 当你长时间按时调用
我们只需要在我们实现的继承了 Activity 的类中 Override 这些方法即可。
以上按键事件响应方法的第一个参数,是值所按的键,比如你是按的 space、up还是down 等,而第二个参数,则是相应的事件。
package xiaosi.key;
import android.app.Activity;
import android.os.Bundle;
import android.view.KeyEvent;
import android.widget.TextView;
public class KeyActivity extends Activity {
/** Called when the activity is first created. */
private TextView text = null;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
text = (TextView)findViewById(R.id.text);
}
public boolean onKeyDown(int keyCode, KeyEvent event) {
switch (keyCode) {
case KeyEvent.KEYCODE_DPAD_CENTER:
text.setText("Press \"center\" key");
break;
case KeyEvent.KEYCODE_DPAD_UP:
text.setText("Press \"up\" key");
break;
case KeyEvent.KEYCODE_DPAD_DOWN:
text.setText("Press \"down\" key");
break;
default:
text.setText("Illegal key has been pressed");
}
return true;
}
}
点击center键时