【问题标题】:Android: How can I handle the press of the keys?Android:我如何处理按键的按下?
【发布时间】:2016-04-11 10:20:55
【问题描述】:

我想得到一个按键时间,以毫秒为单位。

Example 如果用户按下“F”键,我想以毫秒为单位获取按下时间的值。

 public void keyPressed(KeyEvent event) {
    int keyCode = event.getKeyCode();
    switch (keyCode) {
        case KeyEvent.ACTION_DOWN:
            // start timer
            inizio = System.currentTimeMillis();
            break;
        case KeyEvent.ACTION_UP:
            // end timer
           long  diffInSec = (System.currentTimeMillis() - inizio);
            Toast.makeText(this, "Click durato " + diffInSec, Toast.LENGTH_SHORT).show();
            break;}

【问题讨论】:

    标签: java android android-studio keypress keyevent


    【解决方案1】:

    没有这样的预定义方法,但您可以计算按键按下和按键向上之间的时间

        public void keyPressed(KeyEvent e) {
        int keyCode = e.getKeyCode();
        switch( keyCode ) { 
            case KeyEvent.ACTION_UP:
                // end timer
                break;
            case KeyEvent.ACTION_DOWN:
                // start timer
                break;
    
         }
    } 
    

    【讨论】:

    • 我测试了这个程序,但它不起作用。 "从未使用过 keyPressed 方法"
    猜你喜欢
    • 1970-01-01
    • 2021-07-08
    • 1970-01-01
    • 1970-01-01
    • 2010-12-06
    • 1970-01-01
    • 1970-01-01
    • 2021-05-07
    • 2019-07-10
    相关资源
    最近更新 更多