3 votes

Android : Lancer l'activité lorsque l'on clique sur l'EditText

Comment démarrer une nouvelle activité lorsque l'utilisateur touche un EditText comme dans le widget de recherche Facebook et Google ?

Réglage de setOnClickListener ne fonctionne qu'après le premier clic. Au premier clic, l'EditText est mis en évidence et le clavier s'affiche. Au deuxième clic, la nouvelle activité s'ouvre. Je ne veux pas de cela, je veux plutôt ouvrir l'activité au tout premier clic. Comment dois-je faire ?

10voto

dmon Points 20795

Vous devez désactiver le focus de l'EditText en mode tactile, ce qui fera en sorte que le onclick s'exécute au premier tap :

<EditText ...
      android:focusableInTouchMode="false" 
      android:editable="false"
/>

2voto

shihpeng Points 1893

Définissez le type de saisie de l'EditText sur InputType.TYPE_NULL :

editText.setInputType(InputType.TYPE_NULL);

qui permet de masquer le clavier logiciel tout en recevant l'interaction de l'utilisateur. Démarrez l'activité :

public void onEditTextClick(View arg0) 
{
    Intent intent = new Intent(MainActivity.this, SecondActivity.class);
    startActivity(intent);
}

Bien sûr, le onEditTextClick doit être enregistrée auprès de la méthode EditText objet :)

0voto

Bipin Vayalu Points 1092

S'il vous plaît, essayez ceci

<EditText
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:onClick="search"/>

y

public void search(View view) 
{
    EditText text = (EditText)view;

    if(text.length() == 0)
        return;
    Intent intent = new Intent(MainActivity.this, SecondActivity.class);
    startActivity(intent);
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X