user7620502
user7620502

Reputation:

Validation Of SignUp Fails

I have made a fragment in which I am validating a Register form, it works fine sometime but after few seconds the app stops without showing any message nor I have any error log...I don't know what happens.

Here is my code:

public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState) {
            View view = inflater.inflate(R.layout.fragment_register, container, false);
            RegUsername = (EditText) view.findViewById(R.id.RegUsername);
            RegEmailId = (EditText) view.findViewById(R.id.RegEmailId);
            RegPhoneNo = (EditText) view.findViewById(R.id.RegPhoneNo);
            RegPassword = (EditText) view.findViewById(R.id.RegPassword);
            RegisterButton = (Button) view.findViewById(R.id.Register);
            RegisterButton.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    Register(); }})};

            return view; }

       private void Register() {
            initialize();

            if (!registerfail()) {
                Toast.makeText(getActivity(), "Registration failed! || Try Again", Toast.LENGTH_SHORT).show();
            } else {
                registerok();
            }
        }

        private void registerok() {
            Toast.makeText(getActivity(), "Welcome " + Username, Toast.LENGTH_SHORT);
        }

        private boolean registerfail() {
            boolean validation = true;
            if (Username.isEmpty() || Username.length() > 25) {
                RegUsername.setError("Invalid username");
validation = false;
            }
            if (EmailId.isEmpty() || !Patterns.EMAIL_ADDRESS.matcher(EmailId).matches()) {
                RegEmailId.setError("Invalid EmailId");
validation = false; }
            }
            if (PhoneNo.isEmpty()) {
                RegPhoneNo.setError("Invalid PhoneNo.");
validation = false; }
            }
            if (Password.isEmpty()) {
                RegPassword.setError("Invalid Password"); 
validation = false;}
            }
            return validation; }

         private void initialize() {
            Username = RegUsername.getText().toString().trim();
            EmailId = RegEmailId.getText().toString().trim();
            PhoneNo = RegPhoneNo.getText().toString().trim();
            Password = RegPassword.getText().toString().trim(); }}

Upvotes: 0

Views: 54

Answers (2)

AskNilesh
AskNilesh

Reputation: 69689

try this way my friend

String emailAddress = RegEmailId.getText().toString().trim();

if (RegPassword.getText().toString().length() < 6) {
RegPassword.setError(getString("password minimum contain 6 character"));
RegPassword.requestFocus();
}

if (RegPassword.getText().toString().equals("")) {
RegPassword.setError(getString("please enter password"));
RegPassword.requestFocus();
}

if (RegPhoneNo.getText().toString().equals("")) {
RegPhoneNo.setError(getString("please enter password"));
RegPhoneNo.requestFocus();
}

if (!android.util.Patterns.EMAIL_ADDRESS.matcher(emailAddress).matches()) {
RegEmailId.setError(getString("please enter valid email address"));
RegEmailId.requestFocus();
}

if (RegEmailId.getText().toString().equals("")) {
RegEmailId.setError(getString("please enter email address"));
RegEmailId.requestFocus();
}

if (!emailAddress.equals("") &&
RegPassword.getText().toString().length() >= 6 &&
!RegPassword.getText().toString().trim().equals("")
&& android.util.Patterns.EMAIL_ADDRESS.matcher(emailAddress).matches()  &&
!RegPhoneNo.getText().toString().equals("")&&
 RegPhoneNo.getText().toString().length()>=10)   {
// do  your action
}

Upvotes: 1

Mohammad nabil
Mohammad nabil

Reputation: 1020

//set validation = false if any if condition is failed    
private boolean registerfail() {
    boolean validation = true;

    if (Username.isEmpty() || Username.length() > 25) {
        RegUsername.setError("Invalid username");
        validation = false;
    }
    if (EmailId.isEmpty() || !Patterns.EMAIL_ADDRESS.matcher(EmailId).matches()) {
        RegEmailId.setError("Invalid EmailId");
        validation = false;
    }
    if (PhoneNo.isEmpty()) {
        RegPhoneNo.setError("Invalid PhoneNo."); 
        validation = false;
    }
    if (Password.isEmpty()) {
        RegPassword.setError("Invalid Password"); 
        validation = false;
    }
    return validation; 
}

Upvotes: 1

Related Questions