このコードは私の選択に従ってユーザー名と携帯電話には機能しませんが、電子メールの検証には機能しません。 注意電子メールのみをチェックしたいのですが、このフィールドは空ではありません。**論理を知っていることを覚えておいてください。 **いくつかのロジックを試しましたが、電子メールの編集テキストは何もしません。フィールドが空でない場合のみ電子メールの妥当性確認
public class Login extends BaseActivity {
JSONObject jsonobject;
JSONArray jsonarray;
private ProgressDialog dialog;
ArrayList<String> arealist;
//ArrayList<GetterSetter> area;
public static final String PREFS_NAME = "MyPrefsFile";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
Button login = (Button) findViewById(R.id.button_register);
login.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v) {
EditText user = (EditText) findViewById(R.id.editText_enter_name);
EditText mobile = (EditText) findViewById(R.id.editText_mobNo);
EditText email = (EditText) findViewById(R.id.editText_email);
// Check The Validity of empty fields
boolean Resp = validate(new EditText[]{user,mobile});
// Check The Validity of emailID
boolean e_valid = isEmailValid(email.getText());
// Check The Validity of Mobile Numbers
boolean mobile_valid = isMobValid(mobile.getText());
if (Resp && mobile_valid && e_valid) {
PostJson();
} else {
Toast.makeText(Login.this, "Field incorrect..!!!",
Toast.LENGTH_SHORT).show();
}
if (Resp) {
String pass = mobile.getText().toString();
String e_check = email.getText().toString();
if (TextUtils.isEmpty(pass) || pass.length() < 10) {
mobile.setError("Mobile number should be of 10 digits");}
else if (e_check!=null || e_check.length() >=1) {
email.setError("Email Address in invalid format");
Toast.makeText(Login.this,
"Email Address in invalid format",
Toast.LENGTH_SHORT).show();
// Chk Validation of mobile number
if (mobile_valid) {
if (e_valid) {
if (isInternetPresent) {
// setting progress bar to zero
dialog = new ProgressDialog(Login.this);
dialog.setMessage("Please Wait...");
dialog.setIndeterminate(false);
dialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
dialog.setProgressNumberFormat(null);
dialog.setProgress(0);
dialog.show();
// Toast.makeText(Login.this, "Connecting....", Toast.LENGTH_LONG)
// .show();
} else {
Toast.makeText(Login.this, "Unable to connect the server, please check your data settings", Toast.LENGTH_LONG)
.show();
}
}
}
}
}
}
// =====To check the validation of Emails and Empty
// Fields==========//
public boolean isEmailValid(Editable email) {
boolean isValid = false;
String expression = "^(([\\w-]+\\.)+[\\w-]+|([a-zA-Z]{1}|[\\w-]{2,}))@"
+ "((([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\.([0-1]?"
+ "[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\."
+ "([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\.([0-1]?"
+ "[0-9]{1,2}|25[0-5]|2[0-4][0-9])){1}|"
+ "([a-zA-Z]+[\\w-]+\\.)+[a-zA-Z]{2,4})$";
CharSequence inputStr = email;
Pattern pattern = Pattern.compile(expression,
Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) {
isValid = true;
}
return isValid;
}
public boolean isMobValid(Editable mobile) {
boolean isOk = false;
String exp = "^[0-9]{10}$";
CharSequence inputStr = mobile;
Pattern pattern = Pattern
.compile(exp, Pattern.CASE_INSENSITIVE);
Matcher matcher = pattern.matcher(inputStr);
if (matcher.matches()) {
isOk = true;
}
return isOk;
}
public boolean validate(EditText[] fields) {
// TODO Auto-generated method stub
for (int i = 0; i < fields.length; i++) {
EditText currentField = fields[i];
if (currentField.getText().toString().length() <= 0) {
currentField.setError("This field can't be empty");
// Toast.makeText(Login.this, "Enter all the fields..!!!",
// Toast.LENGTH_SHORT).show();
return false;
}
}
return true;
}
});
}
// ==========//
// =========================== Json Object==================//
public void PostJson() {
}
@Override
public void onFailure(Throwable e, String response) {
Log.e("ERROR_LOG", "onFailure request" + e.toString());
Toast.makeText(Login.this, "Error in Connection.....",
Toast.LENGTH_SHORT).show();
}
@Override
public void onFinish() {
// //////// { onFinish body}///////////////////////////////
super.onFinish();
// ////////////////////////////////////////////////////////
}
});
}
}
私の編集した答えを確認してください。 –