2010-08-15 5 views
1

Je veux montrer le softkeyboard, mais cela ne fonctionne pas. Voici mon code:Android: Déclencher le softkeaboard dans edittext personnalisé

public void onCreate(Bundle savedInstanceState) { 

     super.onCreate(savedInstanceState); 

     myTextView myTextView = new myTextView(this); 

     setContentView(myTextView); 
    } 

public class myTextView extends EditText{ 

public boolean onTouchEvent(){ 

if(action == ACTION_DOWN){ 

super.onTouchEvent(event); 

} } 

Quand je touche l'écran, l'SoftKeyboard ne semble pas, mais le « texte d'édition » AlertDialog apparaît, qui apparaît sur edittexts normale lorsque vous touchez à long eux. Ce code supplémentaire dans le onCreate n'a pas d'affection:

InputMethodManager input = (InputMethodManager) 
getSystemService(Context.INPUT_METHOD_SERVICE); 
input.showSoftInput(myTextView, 0); 

Merci pour l'aide, Fr4gg0r

Répondre

0

Essayez ceci -

myTextView.setOnFocusChangeListener(
      new View.OnFocusChangeListener() { 
       @Override 
       public void onFocusChange(View v, boolean hasFocus) { 
        if (hasFocus) 
           getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); 
       } 
      }); 
0

Je suis cette réponse très tard désolé .. J'ai donc essayé votre code avec la commande suivante: myTextView.requestFocus(); Mais le clavier n'apparaît pas.

Je dois corriger mon texte: Sur l'émulateur, le clavier n'apparaît pas, mais sur mon Samsung Galaxy S, il le fait! : o

Questions connexes