3

I have a search area (edittext) and i want to disable the long press action of backspace (delete) button. User must click this button for each characters to delete. How can i do it?

I'm new on it. Can you please edit comment lines? On short press, i want default action; on long press, i want it to do what it does on short press.

 @Override
  public boolean onKeyDown( int keyCode, KeyEvent event ) {
    if( keyCode == KeyEvent.KEYCODE_DEL ) {
      event.startTracking();
      return true; 
    }
    return super.onKeyDown( keyCode, event );
  }

  @Override
  public boolean onKeyUp( int keyCode, KeyEvent event ) {
    if( keyCode == KeyEvent.KEYCODE_DEL ) {
      //Handle what you want on short press.      
      return true; 
    }

    return super.onKeyUp( keyCode, event );
  }

  @Override
  public boolean onKeyLongPress( int keyCode, KeyEvent event ) {
    if( keyCode == KeyEvent.KEYCODE_DEL ) {
      //Handle what you want in long press.
      return true;
    }
    return super.onKeyLongPress( keyCode, event );
  }

Thank you

4

1 に答える 1

1

アクティビティのオーバーライドonKeyDown() メソッド。KEYCODE_DELキーを確認する必要があります。

于 2012-05-05T12:20:14.487 に答える