editText field is required before moving on to another Activity
android, android-edittext, onclicklistener, validation
Solution
It's easy...check if your EditText is empty as in below example below.
if( TextUtils.isEmpty(userName.getText())){
/**
* You can Toast a message here that the Username is Empty
**/
userName.setError( "First name is required!" );
}else{
Intent i = new Intent(getApplicationContext(), Login.class);
startActivity(i);
}
Here is a Kotlin version:
userName.takeIf { it.isEmpty() }?.let {
userName.error = "First name is required!"
} ?: run {
startActivity(Intent(applicationContext, this))
}
Problem
I have validation for `editText`. If the `editText` field is empty it should fail validation and stop the user moving on to another `Activity`, as a value is required. How to do it? I know this is a basic question, but I can't figure out how to do this. My code: ``` btninsert = (Button)findViewById(R.id.btn_insert); btninsert.setOnClickListener( new View.OnClickListener() { public void onClick(View v) { insertValues(); EditText userName = (EditText) findViewById(R.id.editText1); if( userName.getText().toString().length() == 0 ) userName.setError( "First name is required!" ); Intent i = new Intent(getApplicationContext(), Login.class); startActivity(i); } }); ``` When this `Button` is clicked the user is redirect to next screen, but I need that if validation fails they stay on the current `Activity`, and only when validation is successful (i.e. a value has been entered) they go to the next `Activity`.