Advertisement
Guest User

RegisterActivity.java

a guest
Dec 11th, 2019
186
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.25 KB | None | 0 0
  1. package com.amel.your_student;
  2.  
  3. import android.os.Bundle;
  4. import androidx.appcompat.app.AppCompatActivity;
  5. import android.text.TextUtils;
  6. import android.view.KeyEvent;
  7. import android.view.View;
  8. import android.view.inputmethod.EditorInfo;
  9. import android.widget.EditText;
  10. import android.widget.TextView;
  11.  
  12. public class RegisterActivity extends AppCompatActivity {
  13.  
  14.     private EditText mViewUser, mViewPassword, mViewRepassword;
  15.  
  16.     @Override
  17.     protected void onCreate(Bundle savedInstanceState) {
  18.         super.onCreate(savedInstanceState);
  19.         setContentView(R.layout.activity_register);
  20.  
  21.         /* Menginisialisasi variable dengan Form User, Form Password, dan Form Repassword
  22.         dari Layout RegisterActivity */
  23.         mViewUser =findViewById(R.id.et_emailSignup);
  24.         mViewPassword =findViewById(R.id.et_passwordSignup);
  25.         mViewRepassword =findViewById(R.id.et_passwordSignup2);
  26.  
  27.         /* Menjalankan Method razia() jika merasakan tombol SignUp di keyboard disentuh */
  28.         mViewRepassword.setOnEditorActionListener(new TextView.OnEditorActionListener() {
  29.             @Override
  30.             public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
  31.                 if (actionId == EditorInfo.IME_ACTION_DONE || actionId == EditorInfo.IME_NULL) {
  32.                     razia();
  33.                     return true;
  34.                 }
  35.                 return false;
  36.             }
  37.         });
  38.         /* Menjalankan Method razia() jika merasakan tombol SignUp disentuh */
  39.         findViewById(R.id.button_signupSignup).setOnClickListener(new View.OnClickListener() {
  40.             @Override
  41.             public void onClick(View v) {
  42.                 razia();
  43.             }
  44.         });
  45.     }
  46.  
  47.     /** Men-check inputan User dan Password dan Memberikan akses ke MainActivity */
  48.     private void razia(){
  49.         /* Mereset semua Error dan fokus menjadi default */
  50.         mViewUser.setError(null);
  51.         mViewPassword.setError(null);
  52.         mViewRepassword.setError(null);
  53.         View fokus = null;
  54.         boolean cancel = false;
  55.  
  56.         /* Mengambil text dari Form User, Password, Repassword dengan variable baru bertipe String*/
  57.         String repassword = mViewRepassword.getText().toString();
  58.         String user = mViewUser.getText().toString();
  59.         String password = mViewPassword.getText().toString();
  60.  
  61.         /* Jika form user kosong atau MEMENUHI kriteria di Method cekUser() maka, Set error di Form-
  62.          * User dengan menset variable fokus dan error di Viewnya juga cancel menjadi true*/
  63.         if (TextUtils.isEmpty(user)){
  64.             mViewUser.setError("This field is required");
  65.             fokus = mViewUser;
  66.             cancel = true;
  67.         }else if(cekUser(user)){
  68.             mViewUser.setError("This Username is already exist");
  69.             fokus = mViewUser;
  70.             cancel = true;
  71.         }
  72.  
  73.         /* Jika form password kosong dan MEMENUHI kriteria di Method cekPassword maka,
  74.          * Reaksinya sama dengan percabangan User di atas. Bedanya untuk Password dan Repassword*/
  75.         if (TextUtils.isEmpty(password)){
  76.             mViewPassword.setError("This field is required");
  77.             fokus = mViewPassword;
  78.             cancel = true;
  79.         }else if (!cekPassword(password,repassword)){
  80.             mViewRepassword.setError("This password is incorrect");
  81.             fokus = mViewRepassword;
  82.             cancel = true;
  83.         }
  84.  
  85.         /** Jika cancel true, variable fokus mendapatkan fokus. Jika false, maka
  86.          *  Kembali ke LoginActivity dan Set User dan Password untuk data yang terdaftar */
  87.         if (cancel){
  88.             fokus.requestFocus();
  89.         }else{
  90.             Preferences.setRegisteredUser(getBaseContext(),user);
  91.             Preferences.setRegisteredPass(getBaseContext(),password);
  92.             finish();
  93.         }
  94.     }
  95.  
  96.     /** True jika parameter password sama dengan parameter repassword */
  97.     private boolean cekPassword(String password, String repassword){
  98.         return password.equals(repassword);
  99.     }
  100.  
  101.     /** True jika parameter user sama dengan data user yang terdaftar dari Preferences */
  102.     private boolean cekUser(String user){
  103.         return user.equals(Preferences.getRegisteredUser(getBaseContext()));
  104.     }
  105. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement