2010-02-05 5 views

Répondre

3

Pour afficher le clavier virtuel, vous pouvez essayer: InputMethodManager.showSoftInput()

En ce qui concerne l'ajout d'auditeurs, le mieux que vous pouvez faire est d'ajouter un TextChangedListener à un EditText pour écouter les modifications dans la vue EditText qui sont faites via le clavier .

+0

Ive a essayé de faire quelque chose comme ça: sur une longue pression bouton de menu en i'am en vue de la carte, pour me montrer le clavier mou .. mais comme je presse le menu, l'écrasement de l'application: c'est whhat i écrire dans mon proggy: – rayman

+0

InputMethodManager showSoftInput; onKeyDown public boolean (int keyCode, événement KeyEvent) {switch (codeTouche) { cas KeyEvent.KEYCODE_MENU: showSoftInput.showSoftInput (Mapview, 0); pause; cas KeyEvent.KEYCODE_1: // zoom dans mc.zoomIn(); pause; case KeyEvent.KEYCODE_2: // zoom arrière mc.zoomOut(); pause; case KeyEvent.KEYCODE_4: // défile vers la gauche mc.scrollBy (-4, 0); pause; case KeyEvent.KEYCODE_5: // défile à droite mc.scrollBy (4, 0); pause; } return super.onKeyDown (code de clé, événement); } Qu'est-ce qui ne va pas? Idan. – rayman

+0

Ajoutez ceci à la première ligne: InputMethodManager showSoftInput = (InputMethodManager) this.getSystemService (Context.INPUT_METHOD_SERVICE); – rayman

2

Ive a essayé deux options, mais aucun d'entre eux travaillaient dans l'émulateur, comme je l'ai dit, je suis en train de pop-up clavier programmable sur le menu à long presse:

@Override 

public boolean onKeyLongPress(int keyCode, KeyEvent event) 

{ 

      if (keyCode == KeyEvent.KEYCODE_MENU) 
     { 
      showSoftInput.getInputMethodList(); 
      showSoftInput.toggleSoftInput(showSoftInput.SHOW_FORCED, 0); 

      return true; 
     } 
     return super.onKeyLongPress(keyCode, event); 
    } 

deuxième option:

View.OnLongClickListener mLongClickListener = new View.OnLongClickListener() 
    { 

     @Override 
     public boolean onLongClick(View v) 
     { 

      Configuration config = RouteMapActivity.this.getResources() 
        .getConfiguration(); 
      if (config.hardKeyboardHidden == Configuration.HARDKEYBOARDHIDDEN_YES) 
      { 
       InputMethodManager imm = (InputMethodManager) RouteMapActivity.this 
         .getSystemService(Context.INPUT_METHOD_SERVICE); 
       imm.showSoftInput(mapView, InputMethodManager.SHOW_IMPLICIT); // .SHOW_FORCED); 
      } 
      return false; 
     } 

    }; 
Questions connexes