Widget Recent Post No.

header ads

Material Design Login and Registration Form UI with Source Code




 Step 1 Login.xml

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout 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:id="@+id/register_activity"

    android:orientation="vertical"

    android:background="@drawable/background"

    tools:context=".LoginActivity">


    <LinearLayout

        android:layout_width="match_parent"

        android:layout_height="50dp"

        android:orientation="horizontal"/>


    <ScrollView

        android:id="@+id/login_form"

        android:layout_width="match_parent"

        android:layout_height="match_parent" >


        <LinearLayout

            android:layout_width="fill_parent"

            android:layout_height="wrap_content"

            android:layout_marginLeft="10dp"

            android:layout_marginRight="10dp"

            android:orientation="vertical">



            <ImageView

                android:layout_width="100dp"

                android:layout_height="100dp"

                android:src="@drawable/person"

                android:layout_gravity="center_horizontal"

                android:layout_marginTop="30dp"/>


            <TextView

                style="@style/AppTheme"

                android:fontFamily="sans-serif-condensed"

                android:textStyle="bold"

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                android:layout_marginTop="8dp"

                android:textColor="@color/colorAccent"

                android:textSize="25sp"

                android:textAlignment="center"

                android:text="WELCOME BACK"/>




            <com.google.android.material.textfield.TextInputLayout


                android:textColorHint="@color/colorAccent"

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                android:hint="@string/form_email">


                <com.google.android.material.textfield.TextInputEditText


                    style="@style/AppTheme"

                    android:fontFamily="sans-serif-condensed"

                    android:textStyle="bold"

                    android:textColor="@color/colorAccent"

                    android:id="@+id/editTextEmail"

                    android:layout_width="match_parent"

                    android:layout_height="wrap_content"

                    android:inputType="textEmailAddress"

                    android:layout_margin="10dp"

                    android:ems="10" />


            </com.google.android.material.textfield.TextInputLayout>


            <com.google.android.material.textfield.TextInputLayout

                style="@style/AppTheme"

                android:fontFamily="sans-serif-condensed"

                android:textStyle="bold"

                android:textColorHint="@color/colorAccent"

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                app:endIconMode="password_toggle"

                android:hint="@string/form_password">


                <com.google.android.material.textfield.TextInputEditText

                    style="@style/AppTheme"

                    android:fontFamily="sans-serif-condensed"

                    android:textStyle="bold"

                    android:textColor="@color/colorAccent"

                    android:id="@+id/editPassword"

                    android:layout_width="match_parent"

                    android:layout_height="wrap_content"

                    android:inputType="textPassword"

                    android:layout_margin="10dp"

                    android:ems="10" />


            </com.google.android.material.textfield.TextInputLayout>



            <TextView

                style="@style/AppTheme"

                android:fontFamily="sans-serif-condensed"

                android:textStyle="bold"

                android:layout_marginTop="20dp"

                android:id="@+id/reset_password"

                android:layout_width="wrap_content"


                android:layout_height="wrap_content"

                android:layout_gravity="right"

                android:layout_marginRight="12dp"


                android:text="Forget your Password?"

                android:textColor="#000"

                android:textSize="14dp" />




            <Button

                style="@style/AppTheme"

                android:fontFamily="sans-serif-condensed"

                android:id="@+id/buttonLogin"

                android:layout_margin="20dp"

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                android:textColor="@color/white"

                android:background="@drawable/btn_round"

                android:text="Login" />


            <TextView

                style="@style/AppTheme"

                android:fontFamily="sans-serif-condensed"

                android:textStyle="bold"

                android:id="@+id/already_signup"

                android:layout_width="match_parent"

                android:layout_height="wrap_content"

                android:layout_marginTop="7dp"

                android:textColor="@color/colorAccent"

                android:textAlignment="center"

                android:text="@string/new_member"

                tools:ignore="RtlCompat" />


        </LinearLayout>

    </ScrollView>


</LinearLayout>


Step 2 login.java

package in.learncodewithrk.loginandregistrationform;


import androidx.appcompat.app.AppCompatActivity;


import android.content.Intent;

import android.os.Bundle;

import android.util.Patterns;

import android.view.View;

import android.widget.Button;

import android.widget.TextView;

import android.widget.Toast;


import com.basgeekball.awesomevalidation.AwesomeValidation;

import com.basgeekball.awesomevalidation.ValidationStyle;


public class LoginActivity extends AppCompatActivity {

    Button requestButton;

    TextView alreadySignup,reset_password;

    private AwesomeValidation awesomeValidation;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_login);


        reset_password = (TextView)findViewById(R.id.reset_password);

        reset_password.setOnClickListener(new View.OnClickListener() {

            @Override

            public void onClick(View view) {

                Intent streamIntent = new Intent(LoginActivity.this,ForgetPassword.class);

                startActivity(streamIntent);

            }

        });


        awesomeValidation = new AwesomeValidation(ValidationStyle.BASIC);


        requestButton = (Button) findViewById(R.id.buttonLogin);

        alreadySignup = (TextView) findViewById(R.id.already_signup);

        requestButton.setOnClickListener(mMyListener);

        alreadySignup.setOnClickListener(mMyListener);


        awesomeValidation.addValidation(this, R.id.editTextEmail, Patterns.EMAIL_ADDRESS, R.string.emailerror);

    }

    private View.OnClickListener mMyListener = new View.OnClickListener() {

        public void onClick(View v) {

            switch (v.getId() /*to get clicked view id**/) {

                case R.id.buttonSubmit:

                    if (awesomeValidation.validate()) {

                        Toast.makeText(getApplicationContext(), "Login In Working!", Toast.LENGTH_LONG).show();

                    }

                    break;

                case R.id.already_signup:

                    Intent i = new Intent(getApplicationContext(), MainActivity.class);

                    startActivity(i);

                    break;

                default:

                    break;

            }

        }

    };

}

READ MORE >>

GITHUB :https://github.com/LearncodeWithRk/Login-Registration-Form-UI

Post a Comment

0 Comments