-1

Actually I am trying to validate the login form ,but I am confused where to start from.I too want to validate registration form but if this will be clear I can validate that on my own.I too saw some youtube videos for validation but still is confused.I want to validate this and also want to show the toast msg after success and vice versa if login failed too.

this is my MainActivity.java code

public class MainActivity extends AppCompatActivity {
    

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        Button textView3 = (Button) findViewById(R.id.textView3);
        textView3.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                Intent i = new Intent(MainActivity.this,NewUserActivity.class);
                startActivity(i);


            }
        });





    }
}

this is my xml code.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/ic_launcher_background"
    tools:context=".MainActivity">


    <TextView
        android:id="@+id/plain_text_input"
        android:layout_width="260dp"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="8dp"
        android:layout_marginLeft="8dp"
        android:layout_marginEnd="142dp"
        android:layout_marginRight="142dp"
        android:layout_marginBottom="439dp"
        android:drawableLeft="@drawable/ic_action_username"
        android:fontFamily="sans-serif"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:text="USERNAME"
        android:textColor="@color/WhiteSmoke"
        android:textSize="20dp" />

    <EditText
        android:id="@+id/txtusername"
        android:layout_width="356dp"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="45dp"
        android:layout_marginBottom="381dp"
        android:ems="10"
        android:hint="Enter Username"
        android:textSize="20dp" />

    <TextView
        android:id="@+id/editTextTextPersonName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentStart="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="23dp"
        android:layout_marginLeft="23dp"
        android:layout_marginEnd="78dp"
        android:layout_marginRight="78dp"
        android:layout_marginBottom="325dp"
        android:drawableLeft="@drawable/ic_action_password"
        android:fontFamily="sans-serif"
        android:text="PASSWORD"
        android:textColor="@color/WhiteSmoke"
        android:textSize="20dp" />

    <EditText
        android:id="@+id/txtpassword"
        android:layout_width="355dp"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="41dp"
        android:layout_marginBottom="260dp"
        android:hint="Enter Password"
        android:textSize="20dp"/>

    <androidx.cardview.widget.CardView
        android:layout_width="348dp"
        android:layout_height="56dp"
        android:layout_alignParentStart="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:layout_marginStart="20dp"
        android:layout_marginEnd="20dp"
        android:layout_marginRight="28dp"
        android:layout_marginBottom="170dp"
        app:cardBackgroundColor="@color/DeepPink"
        app:cardCornerRadius="30dp"
        app:cardElevation="10dp">

        <RelativeLayout
            android:layout_width="373dp"
            android:layout_height="73dp"
            android:layout_marginEnd="50dp"
            android:layout_marginBottom="100dp">

            <TextView
                android:id="@+id/textView2"
                android:layout_width="wrap_content"
                android:layout_height="44dp"
                android:layout_alignParentEnd="true"
                android:layout_alignParentBottom="true"
                android:layout_marginEnd="157dp"
                android:layout_marginBottom="18dp"
                android:fontFamily="sans-serif"
                android:freezesText="true"
                android:text="LOGIN "
                android:textColor="@color/Black"
                android:textSize="25dp" />
        </RelativeLayout>
    </androidx.cardview.widget.CardView>

    <Button
        android:id="@+id/textView3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="146dp"
        android:layout_marginRight="146dp"
        android:layout_marginBottom="94dp"
        android:fontFamily="sans-serif"
        android:text="SIGN IN NOW"
        android:textAllCaps="true"
        android:textColor="@color/Black"
        android:textSize="20dp" />

    <Button
        android:id="@+id/textView9"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="104dp"
        android:layout_marginRight="104dp"
        android:layout_marginBottom="38dp"
        android:fontFamily="sans-serif"
        android:text="FORGOT PASSWORD!"
        android:textAllCaps="true"
        android:textColor="@color/Black"
        android:textSize="20dp" />

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="wrap_content"
        android:layout_height="106dp"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="108dp"
        android:layout_marginBottom="495dp"
        app:srcCompat="@drawable/ticket" />

    <CheckBox
        android:id="@+id/checkBox"
        android:layout_width="wrap_content"
        android:layout_height="44dp"
        android:layout_alignParentEnd="true"
        android:layout_alignParentBottom="true"
        android:layout_marginEnd="17dp"
        android:layout_marginBottom="598dp"
        android:text="ADMIN"
        android:textSize="20dp"
         />


</RelativeLayout>
sank
  • 133
  • 7

1 Answers1

1

You usually do the validation on the click of a button.

You would have a seperate method, for example, validateInput that returns a boolean value. If validateInput is true, you continue with the usual, ie, move the user into the next page.

If not, you can show the user a Toast or a Snackbar. Or you can put the message (Toast or Snackbar) in the validateInput method.

example :

public boolean validateInput() {

   String userName = ((EditText) findViewById(R.id.userNameText)).getText().toString();

   if(userName == "") return false;
    
   return true;
}
Ahmad Sattout
  • 2,248
  • 1
  • 19
  • 42