Autore Topic: gestione campi vuoti  (Letto 1667 volte)

Offline Ivan86

  • Utente junior
  • **
  • Post: 139
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S II
  • Sistema operativo:
    Windows 7
gestione campi vuoti
« il: 05 Aprile 2011, 21:32:55 CEST »
0
ok, forse è banale.. ma non ci riesco!!!

ho creato una Activity nella quale l'utente si può iscrivere inserendo le sue generalità
i campi sono obbligatori, quindi vorrei fare un controllo al momento della registrazione, così da avvisare l'utente di compilare tutti i campi e di non lasciarli vuoti

questo il mio codice:
Codice (Java): [Seleziona]
public class IscrizioneActivity extends Activity implements OnClickListener{
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.mod_iscrizione);

                Button iscriviButton = (Button) findViewById(R.id.btn_iscriviti);
                iscriviButton.setOnClickListener(this);
        }

public void onClick(View view) {
        EditText txtnome = (EditText)findViewById(R.id.txt_nome);
        String nome = txtnome.getText().toString();
        EditText txtcnome = (EditText)findViewById(R.id.txt_cnome);
        String cnome = txtcnome.getText().toString();    
        EditText txtmail = (EditText)findViewById(R.id.txt_email);
        String mail = txtmail.getText().toString();
        EditText txtpass = (EditText)findViewById(R.id.txt_passw);
        String pas = txtpass.getText().toString();
        EditText txtsesso = (EditText)findViewById(R.id.txt_genere);

        if (nome == null){
                Toast.makeText(this, "Compilare tutti i campi", Toast.LENGTH_SHORT).show();
        }
ho fatto la prova solo su "nome", ma dal Toast non ci passa
deduco che nome non è vuoto..

anche perché ho fatto varie prove:
Codice (Java): [Seleziona]
if (nome == "")
if (nome == " ")

come si fa? scommetto che è una cavolata

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +507
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re: gestione campi vuoti
« Risposta #1 il: 05 Aprile 2011, 21:55:53 CEST »
0
« Ultima modifica: 06 Aprile 2011, 07:17:41 CEST da JD »

Offline Ivan86

  • Utente junior
  • **
  • Post: 139
  • Respect: +1
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy S II
  • Sistema operativo:
    Windows 7
Re:gestione campi vuoti
« Risposta #2 il: 05 Aprile 2011, 22:32:55 CEST »
0
c...o che figura. mi ero dimenticato di sto fatto
grazie, risolto

Offline cadupper

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • cadupper
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic Tim (32A)
  • Play Store ID:
    cadupper
  • Sistema operativo:
    Ubuntu 10.04
Re:gestione campi vuoti
« Risposta #3 il: 13 Maggio 2011, 00:28:48 CEST »
0
Il mio codice è questo, perchè mi dice sempre che è vuoto il campo di testo??  o_O
Codice: [Seleziona]
public class AddNewEvent extends Activity {
        private AppDB db;

        // name
        EditText et_name;

        // coordinates
        EditText et_coo;
        Button bu_cooByMap;
        Button bu_cooHere;
        double lat = 0;
        double lon = 0;

        // photo
        ImageButton ib_photo;
        Button bu_takePhoto;
        DatePicker dp_date;

        Button bu_import;
        Button bu_ok;

        public void onCreate(Bundle savedInstanceState) {


                // coordinates
                et_coo = (EditText) findViewById(R.id.tv_nevent_Coo);
                bu_cooByMap = (Button) findViewById(R.id.bu_nevent_CooByMap);
                bu_cooHere = (Button) findViewById(R.id.bu_nevent_CooHere);

                // photo
                ib_photo = (ImageButton) findViewById(R.id.ib_nevent_photo);
                bu_takePhoto = (Button) findViewById(R.id.bu_nevent_TakePoto);
                dp_date = (DatePicker) findViewById(R.id.dp_nevent);

                bu_import = (Button) findViewById(R.id.bu_nevent_Import);

                super.onCreate(savedInstanceState);
                setContentView(R.layout.addnew_event);

                bu_ok = (Button) findViewById(R.id.bu_nevent_ok);
                bu_ok.setOnClickListener(new View.OnClickListener() {
                        public void onClick(View v) {
                                et_name = (EditText) findViewById(R.id.et_nevent_Name);
                                String name = et_name.getText().toString();
                                if (name.equals("")) {
                                        db.open();
                                        db.insertEvent(name);
                                        db.close();
                                        Intent myIntent = new Intent(v.getContext(), Events.class);
                                        startActivityForResult(myIntent, 0);
                                } else {
                                        Toast.makeText(getApplicationContext(),
                                                        "Insert the name of event", Toast.LENGTH_LONG)
                                                        .show();
                                }
                        }
                });
        }

}

e perchè
Codice: [Seleziona]
et_name = (EditText) findViewById(R.id.et_nevent_Name);se lo metto appena prima del setOnClickListener mi da errore ? non basta sia dentro il onCreate?

Offline Gigiuz

  • Utente normale
  • ***
  • Post: 187
  • Respect: +23
    • Google+
    • gigiuzzo81
    • Gigiuz81
    • Mostra profilo
  • Dispositivo Android:
    Samsung Galaxy Note III
  • Play Store ID:
    GGXSoft
  • Sistema operativo:
    Windows 7 64bit, OS X (virtualized), Ubuntu
Re:gestione campi vuoti
« Risposta #4 il: 13 Maggio 2011, 04:46:25 CEST »
0
Suppongo che entrambi gli errori siano dovuti al fatto che non chiami setContentView(R.layout.addnew_event) prima di qualsiasi altra cosa. Per essere precisi, dovresti cominciare così:
Codice (Java): [Seleziona]
public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                setContentView(R.layout.addnew_event);

/* E poi tutti i vari findViewById() */
Hai bisogno di implementare un sistema di "codici seriali di sblocco" nella tua applicazione? Dai un'occhiata alla mia libreria: RemoteUnlocker