zoukankan      html  css  js  c++  java
  • 按键事件处理

    /**
    * 控制事件通过设置其空间的监听器来监听并处理事件 按键按下事件:通过重写onKeyDown方法 按键弹起事件:通过重写onKeyUp方法
    * 触笔点击事件:通过实现onTouchEvent方法
    *
    * @author chen_xhua
    *
    */
    public class KeyActivity extends Activity {
    // private static final String TAG = "KeyActivity";
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_key);
    // 获得button对象
    Button button_ok = (Button) findViewById(R.id.button_ok);
    // 设置Button控件监听器
    button_ok.setOnClickListener(new Button.OnClickListener() {
    public void onClick(View arg0) {
    // 这里处理事件
    DisplayToast("点击了OK按钮");
    }
    });
    }

    // 按键按下所触发的事件
    public boolean onKeyDown(int keyCode, KeyEvent event) {
    switch (keyCode) {
    case KeyEvent.KEYCODE_DPAD_CENTER:
    DisplayToast("按下:中键");
    break;
    case KeyEvent.KEYCODE_DPAD_UP:
    DisplayToast("按下:上方向键");
    break;
    case KeyEvent.KEYCODE_DPAD_DOWN:
    DisplayToast("按下:下方向键");
    break;
    case KeyEvent.KEYCODE_DPAD_LEFT:
    DisplayToast("按下:左方向键");
    break;
    case KeyEvent.KEYCODE_DPAD_RIGHT:
    DisplayToast("按下:右方向键 ");
    break;
    }
    return super.onKeyDown(keyCode, event);
    }

    // 按键抬起所触发的事件:
    public boolean onKeyUp(int keyCode, KeyEvent event) {
    switch (keyCode) {
    case KeyEvent.KEYCODE_DPAD_CENTER:
    DisplayToast("弹起:中键");
    break;
    case KeyEvent.KEYCODE_DPAD_DOWN:
    DisplayToast("弹起:下方向键");
    break;
    case KeyEvent.KEYCODE_DPAD_LEFT:
    DisplayToast("弹起:左方向键");
    break;
    case KeyEvent.KEYCODE_DPAD_RIGHT:
    DisplayToast("弹起:右方向键");
    break;
    case KeyEvent.KEYCODE_DPAD_UP:
    DisplayToast("弹起:上方向键");
    break;
    }
    return super.onKeyUp(keyCode, event);
    }

    // 多次按下触发事件
    public boolean onKeyMutiple(int keyCode, int repeatCount, KeyEvent event) {
    return super.onKeyMultiple(keyCode, repeatCount, event);
    }

    // 触笔事件
    public boolean onTouchEvent(MotionEvent event) {
    int iAction = event.getAction();
    if (iAction == MotionEvent.ACTION_CANCEL
    || iAction == MotionEvent.ACTION_DOWN
    || iAction == MotionEvent.ACTION_MOVE) {
    return false;
    }
    // 得到触笔点击的位置
    int x = (int) event.getX();
    int y = (int) event.getY();
    DisplayToast("触笔点击坐标:(" + Integer.toString(x) + ","
    + Integer.toString(y) + ")");
    return super.onTouchEvent(event);

    }

    // 显示Toast
    public void DisplayToast(String str) {
    Toast.makeText(this, str, Toast.LENGTH_SHORT).show();
    }

    }

  • 相关阅读:
    机器学习中的概念和名词解释
    NLPIR文本智能分词是语义挖掘的关键
    学习NLPIR语义智能教学科研平台要这样打开
    NLPIR语义智能:大数据与人才成行业发展瓶颈
    NLPIR:大数据挖掘技术引导数据应用
    2018大数据新动态:NLPIR语义智能教学科研平台
    灵玖软件:大数据语言新特征发现
    JZSearch大数据智能搜索网络数据
    大数据信息挖掘中文分词是关键
    灵玖软件:NLPIR文本智能挖掘提速2.0
  • 原文地址:https://www.cnblogs.com/Defry/p/4209268.html
Copyright © 2011-2022 走看看