2011-01-14 7 views
2

J'ai essayé plusieurs suggestions et rien ne fonctionne :(J'essaie de faire apparaître le clavier numérique lorsque cette boîte de dialogue d'alerte est show.Y a-t-il juste une commande pour faire apparaître le clavier de toute façon ?Android pop-up d'alerte numérique besoin de pavé numérique

void GetQuantity() 

{ 
    AlertDialog.Builder alert = new AlertDialog.Builder(this); 
    alert.setTitle("Quantity"); 
    alert.setMessage("Enter Quantity"); 

    final EditText input = new EditText(this); 

    alert.setView(input); 
    input.setText("1"); 

    input.setInputType(DEFAULT_KEYS_DIALER |TYPE_NUMBER_FLAG_DECIMAL); 

    input.setFilters(new InputFilter[] { 
    // Maximum 5 characters. 
    new InputFilter.LengthFilter(5), 
    }); 

    alert.setPositiveButton("OK", new DialogInterface.OnClickListener() { 

    @Override 
    public void onClick(DialogInterface dialog, int which) { 
    Quantity =Double.parseDouble(input.getText().toString()); 
    btnQuan.setText(input.getText().toString()); 

    } 
    }); 


    alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() { 
    public void onClick(DialogInterface dialog, int whichButton) { 
    // do nothing 
    } 
    }); 
    alert.show(); 

} 
+0

Qu'avez-vous essayé? J'ai cherché et trouvé quelques petites choses mais rien de "simple". C'était le meilleur que j'ai pu trouver http://stackoverflow.com/questions/1509719/android-how-to-make-the-keypad-always-visible. – techiServices

Répondre

4

Une autre personne a répondu à ma question avec cela, et ça marche, mais leur messsage est parti ?! est ici la réponse de toute façon:

input.setInputType(InputType.TYPE_CLASS_NUMBER); 
+3

C'était moi, mais j'ai pensé, après avoir relu votre OP, que vous vouliez que le clavier apparaisse automatiquement en même temps que la boîte de dialogue apparaît. Dans la situation actuelle, vous devez taper sur le edittext pour faire apparaître le clavier (et c'est le pavé numérique) – ccheneson

+0

Eh bien merci! ça marche super !! –

1

Voici la réponse complète:

Ce code est ce qu'il vous faut. Il suffit de l'insérer partout où vous avez besoin de lancer la boîte de dialogue d'alerte. Je n'ai pas compris comment lancer le clavier automatiquement, mais ça ne devrait pas être difficile.

AlertDialog.Builder alert = new AlertDialog.Builder(this); 
       alert.setTitle(multiLangTranslation(R.string.manualshippermessage)); 
       final EditText input = new EditText(this); 
       input.setInputType(InputType.TYPE_CLASS_NUMBER); 
       input.setRawInputType(Configuration.KEYBOARD_12KEY); 
       alert.setView(input); 
       alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() { 
       public void onClick(DialogInterface dialog, int whichButton) { 
        //Put actions for OK button here 
        } 
       }); 
       alert.setNegativeButton(multiLangTranslation(R.string.cancel), new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int whichButton) { 
         //Put actions for CANCEL button here, or leave in blank 
        } 
       }); 
       alert.show(); 
0

Comme suggéré ci-dessus, utilisez la commande:

input.setInputType(InputType.TYPE_CLASS_NUMBER); 

où mettre cette commande dans mon code? Je cherche à obtenir un pop-up quand j'appuie sur le bouton d'entrée.

Questions connexes