Sto tentando di aggiungere alcune convalide di testo in un campo di testo di modifica situato all'interno di una finestra di dialogo di avviso. Richiede all'utente di inserire un nome.Convalida null nella casella EditText in Alert Dialog - Android
Desidero aggiungere alcune convalide in modo che se ciò che hanno inserito sia vuoto o nullo, non fa nulla oltre alla creazione di un errore di pronuncia di Toast.
Finora ho:
AlertDialog.Builder alert = new AlertDialog.Builder(this);
alert.setTitle("Record New Track");
alert.setMessage("Please Name Your Track:");
// Set an EditText view to get user input
final EditText trackName = new EditText(this);
alert.setView(trackName);
alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String textString = trackName.getText().toString(); // Converts the value of getText to a string.
if (textString != null && textString.trim().length() ==0)
{
Context context = getApplicationContext();
CharSequence error = "Please enter a track name" + textString;
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, error, duration);
toast.show();
}
else
{
SQLiteDatabase db = waypoints.getWritableDatabase();
ContentValues trackvalues = new ContentValues();
trackvalues.put(TRACK_NAME, textString);
trackvalues.put(TRACK_START_TIME,tracktimeidentifier);
insertid=db.insertOrThrow(TRACK_TABLE_NAME, null, trackvalues);
}
Ma questo solo chiude la finestra di avviso e quindi visualizza il Toast. Voglio che la finestra di dialogo degli avvisi continui a essere visualizzata sullo schermo.
Grazie