2011-11-03 2 views
0

Actuellement en cours de développement en android et essayait de savoir s'il y avait moyen de changer le type d'entrée dans une alerte. À l'heure actuelle, je suppose que c'est juste une boîte de saisie de texte standard, mais je voulais le changer en une boîte de saisie numérique de sorte que le clavier logiciel change pour afficher le pavé numérique. similaire à la façon dont le android:inputType="phone" fonctionne dans le côté mise en page xml de celui-ci.Android: modification du type d'entrée de la boîte de dialogue d'alerte

Répondre

2

Vous pouvez utiliser setView dans la AlertDialog classe pour ajouter une vue que vous aimez. Vous pouvez ensuite simplement modifier le setInputType pour autoriser uniquement les numéros.

final EditText input = new EditText(this); 
input.setInputType(InputType.TYPE_CLASS_NUMBER); 

AlertDialog alertDialog = new AlertDialog.Builder(this).create(); 
alertDialog.setIcon(android.R.drawable.ic_menu_help); 
alertDialog.setTitle("Title"); 
alertDialog.setMessage("Message"); 
alertDialog.setView(input); 
alertDialog.setButton("OK", new OnClickListener() { 

    @Override 
    public void onClick(DialogInterface dialog, int which) { 
     // Value of EditText 
     String value = input.getText().toString().trim(); 
    } 
}); 

alertDialog.show(); 
0

Créer un dialogue au lieu, vous pouvez jouer avec des trucs tout ce que vous aimez :)

Les bases:

Dialog dialog = new Dialog(this); 
    dialog.setContentView(R.id.your_layout); 
    EditText button = (EditText)dialog.findViewById(R.id.your_editText); 
    dialog.show(); 

Hope this helps;)

0

Solution plus simple, aucune disposition personnalisée requise.

AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(this); 
EditText dialogEditText = new EditText(this); 
dialogEditText.setInputType(InputType.TYPE_NUMBER_VARIATION_PASSWORD); 
alertDialogBuilder.setTitle("Your title"); 
alertDialogBuilder.setMessage("Your message"); 
alertDialogBuilder.setView(edittext); 
alertDialogBuilder.show(); 
Questions connexes