Autore Topic: AutoFocus Editext alert, tasterino numerico,nascondere tastiera  (Letto 572 volte)

Offline bircastri

  • Nuovo arrivato
  • *
  • Post: 16
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    windows 7
AutoFocus Editext alert, tasterino numerico,nascondere tastiera
« il: 15 Ottobre 2013, 15:49:59 CEST »
0
Salve ragazzi,

ho girato un pò nel forum e googlato un pò ma non ho trovato ciò che mi interessava.

Le mie richieste sono le seguenti:

1) Ho un AlertDialog.builder nel quale inserisco un campo di testo "EditText", al verificarsi di un particolare evento, mostro l'alert, ma l'utente deve cliccare sopra la text, compare la tastiera, devo poi cliccare sul tasto 123 per inserire i numeri. E' possibile inserire direttamente nel momento in cui vado a mostrare l'alertDialog, la text, con tastiera aperta e che mostri direttamente i numeri (solo nuemri)?

2) Ho in una view 2 EditText, una accetta solo numeri, una accetta caratteri alfanumerici. Se clicco su di una text mi compare la tastiera, c'è modo poi di far comparire l'opzione per far sparire la tastiera?

l'alert la costruisco in questo modo:

Codice: [Seleziona]

AlertDialog.Builder alert = new AlertDialog.Builder(this);
                alert.setTitle("Inserisci quantità");
                alert.setMessage("Inserisci una quantità per l'articolo: "+articolo.getNomeArticolo());
                final EditText inputText = new EditText(this);
                alert.setView(inputText);
                alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int whichButton) {
                                String value = inputText.getText().toString();
                                try{
                                        int quantita = Integer.parseInt(value);
                                        ArticoliOrdine articoloOrdine = new ArticoliOrdine();
                                        articoloOrdine.setIdArticolo(articolo.getCodArticolo());
                                        articoloOrdine.setNomeArticolo(articolo.getNomeArticolo());
                                        articoloOrdine.setQuantia(quantita);
                                        listaArticoli.add(articoloOrdine);
                                       
                                        adapter.notifyDataSetChanged();
                                }catch(Exception e){
                                        AlertDialog.Builder alertErrore = new AlertDialog.Builder(getApplicationContext());
                                        alertErrore.setTitle("Errore");
                                        alertErrore.setMessage("Hai inserito una quantità non valida.");
                                        alertErrore.show();

                                }
                               
                        }
                });


                // Showing Alert Message
                alert.show();

Offline Giamme

  • Nuovo arrivato
  • *
  • Post: 43
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic
  • Play Store ID:
    appLOOPiamo
  • Sistema operativo:
    Windows 7
Re:AutoFocus Editext alert, tasterino numerico,nascondere tastiera
« Risposta #1 il: 17 Ottobre 2013, 18:22:53 CEST »
0
Ciao!
Puoi richiedere il focus, attenzione, all'EditText che vuoi, usando ".requestFocus()" alla EditText che ti interessa.

ES:
Codice (Java): [Seleziona]
 final EditText inputText = new EditText(this);

inputText.requestFocus();
"Tutto ciò che è necessario per il trionfo del male è che gli uomini buoni non facciano nulla."
Edmund Burke

Offline bircastri

  • Nuovo arrivato
  • *
  • Post: 16
  • Respect: 0
    • Mostra profilo
  • Sistema operativo:
    windows 7
Re:AutoFocus Editext alert, tasterino numerico,nascondere tastiera
« Risposta #2 il: 18 Ottobre 2013, 07:07:44 CEST »
0
Ciao,
Grazie mille per la risposta.


Una piccola domanda, quando mi esce l Alert, ho lo smartphone in posizione orizzontale, se per uno motivo o un altro , lo smartphone viene ruotato, la modal scompare.

C è quale modo per evitare ciò?