p3
acitivity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
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"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Password:"
android:textAllCaps="true"
android:textColor="#3949AB"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.423" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="SIGN UP ACTIVITY"
android:textAlignment="center"
android:textColor="#8E24AA"
android:textSize="34sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.074" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="User Name:"
android:textAllCaps="true"
android:textColor="#3949AB"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.102"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.271" />
<EditText
android:id="@+id/txt_login_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.92"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.256" />
<EditText
android:id="@+id/txt_login_password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.91"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.412" />
<Button
android:id="@+id/btn_login_signup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#1E88E5"
android:backgroundTint="#1E88E5"
android:text="Sign Up"
android:textColorLink="#1E88E5"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.423"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.628" />
</androidx.constraintlayout.widget.ConstraintLayout>
mainactivity.java
package com.example.signup;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class MainActivity extends AppCompatActivity implements
View.OnClickListener {
EditText txtUsername;
EditText txtPassword;
Button btnSignup;
String regularExpression = "^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d)(?=.*[@$!])[A-Za-z\\d@$!]{8,}$";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
txtUsername = (EditText)
findViewById(R.id.txt_login_username);
txtPassword = (EditText)
findViewById(R.id.txt_login_password);
btnSignup = (Button)
findViewById(R.id.btn_login_signup);
btnSignup.setOnClickListener(this);
}
public void onClick(View v) {
String username = txtUsername.getText().toString();
String password = txtPassword.getText().toString();
if (validatePassword(password)) {
Bundle bundle = new Bundle();
bundle.putString("user", username);
bundle.putString("pass", password);
Intent it = new Intent(this, Login.class);
it.putExtra("data", bundle);
startActivity(it);
} else {
Toast.makeText(getBaseContext(), "Invalid Password",
Toast.LENGTH_LONG).show();
}
}
private boolean validatePassword(String password) {
Pattern pattern = Pattern.compile(regularExpression);
Matcher matcher = pattern.matcher(password);
return matcher.matches();
}
}activity_login.xml<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout
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"
tools:context=".MainActivity">
<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Password:"
android:textAllCaps="true"
android:textColor="#3949AB"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.1"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.423" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="LOGIN ACTIVITY"
android:textAlignment="center"
android:textColor="#8E24AA"
android:textSize="34sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.074" />
<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="User Name:"
android:textAllCaps="true"
android:textColor="#3949AB"
android:textSize="24sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.102"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.271" />
<EditText
android:id="@+id/txt_login_username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.905"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.256" />
<EditText
android:id="@+id/txt_login_password"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ems="10"
android:inputType="text"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.91"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.412" />
<Button
android:id="@+id/btn_login_signup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#1E88E5"
android:backgroundTint="#1E88E5"
android:text="Sign In"
android:textColorLink="#1E88E5"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.423"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.628" />
</androidx.constraintlayout.widget.ConstraintLayout>login.javapackage com.example.signup;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class Login extends AppCompatActivity implements View.OnClickListener {
EditText txtLoginUsername,txtLoginPassword;
Button btnLogin;
String user,pass;
int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
txtLoginUsername = (EditText)
findViewById(R.id.txt_login_username);
txtLoginPassword = (EditText)
findViewById(R.id.txt_login_password);
btnLogin = (Button) findViewById(R.id.btn_login_signup);
btnLogin.setOnClickListener(this);
Bundle bundle = getIntent().getBundleExtra("data");
user = bundle.getString("user");
pass = bundle.getString("pass");
}
@Override
public void onClick(View v) {
String user1 = txtLoginUsername.getText().toString();
String pass1 = txtLoginPassword.getText().toString();
if(user.equals(user1)&&pass.equals(pass1)) {
Toast.makeText(this,"Login Successful",Toast.LENGTH_LONG).show();
}
else {
count++;
if(count == 3)
{
btnLogin.setEnabled(false);
Toast.makeText(this,"Failed Login Attempts",Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(this,"Login Failed"+count,Toast.LENGTH_LONG).show();
}
}
}
}
Comments
Post a Comment