按钮上的表单验证在android中单击

时间:2014-03-10 04:10:39

标签: android validation onclicklistener android-spinner buttonclick

我正在开发一个Android应用程序,其中Login活动有editText,RadioButton,Spinner和一个按钮。当按下按钮时,我通过检查所有字段是否填充来验证我的表单向用户发出警告消息。任何人都可以帮我解决java代码问题。 在此先感谢。

A Screenshot of my Login Activity

 public void OnClickListener(View v)
{
  name=(EditText)findViewById(R.id.editText1);
  years1=(RadioButton)findViewById(R.id.radioButton3);
  years2=(RadioButton)findViewById(R.id.radioButton4);
  years3=(RadioButton)findViewById(R.id.radioButton5);
  manager=(RadioButton)findViewById(R.id.radioButton1);
  teamleader=(RadioButton)findViewById(R.id.radioButton2);
  rg1=(RadioGroup)findViewById(R.id.Designation);
  rg2=(RadioGroup)findViewById(R.id.Years);
  Button proceed = (Button) findViewById(R.id.button1);
  proceed.setOnClickListener(new View.OnClickListener()
  {
        @Override   
        public void onClick(View v) 
        {
            if (validationSuccess()) 
            {

            }

            else if(manager.isChecked())
        {
            Intent managerIntent = new Intent(getApplicationContext(), ManagerQuestionnaire1.class); // <----- START "SEARCH" ACTIVITY
            startActivityForResult(managerIntent, 0);
        }
            else if(teamleader.isChecked())
              {
              Intent teamleaderIntent = new Intent(getApplicationContext(), TeamleaderQuestionnaire1.class); // <----- START "TYPE ENTRIES OUT" ACTIVITY
              startActivityForResult(teamleaderIntent, 0);
              }
          else {
              AlertDialog();
               }
        }
  });
}




private Boolean validationSuccess()
{
    if(name.getText().toString().equalsIgnoreCase(""))
    {
    Toast.makeText(getApplicationContext(),"Please enter name",0).show();
      return false;
    }

    if(rg1.getCheckedRadioButtonId()<=0)
    {
       Toast.makeText(getApplicationContext(),"Please select designation",0).show();
      return false;
    }

    if(rg2.getCheckedRadioButtonId()<=0)
    {
        Toast.makeText(getApplicationContext(),"Please select Experience",0).show();
      return false;
    }

    if(dept.getSelectedItemPosition()==0)
    {
        Toast.makeText(getApplicationContext(),"Please select Depatrment",0).show();
      return false;
    }
    return true;
}
private void AlertDialog()
 {
     AlertDialog.Builder alertDialogBuilder = new AlertDialog.Builder(Login.this);
        alertDialogBuilder.setMessage("Please ensure all Questions are answered").setCancelable(false).setPositiveButton("OK", new DialogInterface.OnClickListener()
        {
                    public void onClick(DialogInterface dialog, int id) 
                    {
                        dialog.cancel();
                    }
                });

            AlertDialog alert = alertDialogBuilder.create();
            alert.show();

 }

3 个答案:

答案 0 :(得分:4)

使用以下代码:

 mBtnNext.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    if (validationSuccess()) {

                            Intent mIntent = new Intent(
                                    YourActivity.this,
                                    NewActivity.class);
                            } else {
                            AlertDialog();
                        }
            });


    private Boolean validationSuccess(){
    if(editUsername.getText().toString().equalsIgnoreCase("")){
    Toast.makeText(getApplicationContext();"Please enter name",0).show();
      return false;
    }

    if(radioGroupDesignation.getCheckedRadioButtonId()<=0){
       Toast.makeText(getApplicationContext();"Please select designation",0).show();
      return false;
    }

    if(radioGroupExp.getCheckedRadioButtonId()<=0){
        Toast.makeText(getApplicationContext();"Please select Experience",0).show();
      return false;
    }

    if(spinner.getSelectedItemPosition()==0){
        Toast.makeText(getApplicationContext();"Please select Depatrment",0).show();
      return false;
    }
    return true;
    }

答案 1 :(得分:0)

您可以尝试按下按钮单击侦听器中的代码。

 if(editUsername.getText().toString().trim().length()<=0){
    //user name is not inserted
}

if(radioGroupDesignation.getCheckedRadioButtonId()<=0){
    //designation is not selected
}

if(radioGroupExp.getCheckedRadioButtonId()<=0){
    //experience is not selected
}

//set dummy item as first item of spinner (select one)

if(spinner.getSelectedItemPosition()==0){
    //department is not selected
}

答案 2 :(得分:0)

  1. &GT; if(name.equals(“”)){message =“Name is Required”;

       edtname.requestFocus(); return false; } if(contactno.equals("")) {
       message="Contact Number is Required";
       edtcontactnumber.requestFocus(); return false; }else {
       if(contactno.length()&lt;10) { message="Invalid Contact Number";
       edtcontactnumber.requestFocus(); return false; } }
       if(address.equals("")) { message="Address is Required";
       edtaddress.requestFocus(); return false; } return true;</li>