Java 如果Android中的Edittext中存在错误,发送按钮将发送数据
我使用了两个编辑文本框,其中我对电子邮件和确认电子邮件地址的编辑文本框进行了验证。我使用了文本匹配器,验证对我来说很好。检查时没有问题。单击“发送”按钮时,在编辑文本中输入的数据将进入数据库中。如果有错误,以及如何进行验证按钮禁用当更正错误后任何文本框中出现错误时,必须部署输入数据库的数据,否则必须禁用按钮 我需要输入一些东西来阻止发送按钮 我已经在这里对edittext3和edittext4进行了验证,因此如果此按钮中有任何错误,则必须禁用我必须包含的位置Java 如果Android中的Edittext中存在错误,发送按钮将发送数据,java,android,regex,button,Java,Android,Regex,Button,我使用了两个编辑文本框,其中我对电子邮件和确认电子邮件地址的编辑文本框进行了验证。我使用了文本匹配器,验证对我来说很好。检查时没有问题。单击“发送”按钮时,在编辑文本中输入的数据将进入数据库中。如果有错误,以及如何进行验证按钮禁用当更正错误后任何文本框中出现错误时,必须部署输入数据库的数据,否则必须禁用按钮 我需要输入一些东西来阻止发送按钮 我已经在这里对edittext3和edittext4进行了验证,因此如果此按钮中有任何错误,则必须禁用我必须包含的位置 send.setEnabled(fa
send.setEnabled(false);
send.setEnabled(true);
我必须在代码中包含上述方法
edittext3.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
Is_Valid_Email_Address(edittext3);
}
public void Is_Valid_Email_Address(EditText edittext3) {
if (edittext3.getText().toString() == null) {
edittext3.setError("Invalid Email Address");
valid_email = null;
} else if (isEmailValid(edittext3.getText().toString()) == false) {
edittext3.setError("Invalid Email Address");
valid_email = null;
} else if(edittext3.length() == 0 || edittext3.equals("") || edittext3 == null || "".equals(edittext3.getText().toString())) {
valid_email = null;
}else {
valid_email = edittext3.getText().toString();
}
}
});
edittext4.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before,
int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
}
@Override
public void afterTextChanged(Editable s) {
Is_Valid_Confirm_Address(edittext4);
}
public void Is_Valid_Confirm_Address(EditText edittext4) {
if (edittext4.getText().toString() == null) {
edittext4.setError("Invalid Email Address");
valid_confirm = null;
} else if (isEmailValid(edittext4.getText().toString()) == false) {
edittext4.setError("Invalid Email Address");
valid_confirm = null;
} else if (edittext4.getText().toString().equals(edittext3.getText().toString())) {
valid_confirm = edittext4.getText().toString();
} else if(edittext4.length() == 0 || edittext4.equals("") || edittext4 == null || "".equals(edittext4.getText().toString())) {
valid_confirm = null;
} else {
edittext4.setError("Confirm Email is Not Matching");
valid_confirm = null;
}
}
});
//若有任何错误,那个么按钮必须变为禁用或启用,才能将其添加到数据库中
Button send= (Button)findViewById(R.id.send_email);
send.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String email = edittext3.getText().toString();
String confirm = edittext4.getText().toString();
ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("email_address",email));
nameValuePairs.add(new BasicNameValuePair("confirm_email_address",confirm));
try
{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://192.168.1.132/Android_App/Sendata.php");
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse response = httpclient.execute(httppost);
HttpEntity entity = response.getEntity();
is = entity.getContent();
Log.e("log_tag", "connection success ");
Toast.makeText(getApplicationContext(), "contact you shortly.", Toast.LENGTH_LONG).show();
}
catch(Exception e)
{
Log.e("log_tag", "Error in http connection "+e.toString());
Toast.makeText(getApplicationContext(), "Connection fail", Toast.LENGTH_SHORT).show();
}
try
{
BufferedReader reader = new BufferedReader(new InputStreamReader(is,"iso-8859-1"),8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null)
{
sb.append(line + "\n");
Intent i = new Intent(getBaseContext(),SecondActivity.class);
startActivity(i);
}
is.close();
result=sb.toString();
}
catch(Exception e)
{
Log.e("log_tag", "Error converting result "+e.toString());
}
try
{
JSONObject json_data = new JSONObject(result);
CharSequence w= (CharSequence) json_data.get("result");
Toast.makeText(getApplicationContext(), w, Toast.LENGTH_SHORT).show();
}
catch(JSONException e)
{
Log.e("log_tag", "Error parsing data "+e.toString());
Toast.makeText(getApplicationContext(), "JsonArray fail", Toast.LENGTH_SHORT).show();
}
}
});
}
private boolean isEmailValid(String email) {
return android.util.Patterns.EMAIL_ADDRESS.matcher(email).matches();
}
Button send=(Button)findviewbyd(R.id.send\u email);
send.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
字符串email=edittext3.getText().toString();
String confirm=edittext4.getText().toString();
ArrayList nameValuePairs=新的ArrayList();
添加(新的BasicNameValuePair(“电子邮件地址”,email));
添加(新的BasicNameValuePair(“确认电子邮件地址”,确认));
尝试
{
HttpClient HttpClient=新的DefaultHttpClient();
HttpPost HttpPost=新的HttpPost(“http://192.168.1.132/Android_App/Sendata.php");
setEntity(新的UrlEncodedFormEntity(nameValuePairs));
HttpResponse response=httpclient.execute(httppost);
HttpEntity=response.getEntity();
is=entity.getContent();
Log.e(“Log_标签”,“连接成功”);
Toast.makeText(getApplicationContext(),“请稍后与您联系”,Toast.LENGTH_LONG.show();
}
捕获(例外e)
{
e(“Log_标记”,“http连接错误”+e.toString());
Toast.makeText(getApplicationContext(),“连接失败”,Toast.LENGTH\u SHORT.show();
}
尝试
{
BufferedReader reader=新的BufferedReader(新的InputStreamReader(is,“iso-8859-1”),8;
StringBuilder sb=新的StringBuilder();
字符串行=null;
而((line=reader.readLine())!=null)
{
sb.追加(第+行“\n”);
Intent i=新的Intent(getBaseContext(),SecondActivity.class);
星触觉(i);
}
is.close();
结果=sb.toString();
}
捕获(例外e)
{
Log.e(“Log_标记”,“错误转换结果”+e.toString());
}
尝试
{
JSONObject json_data=新的JSONObject(结果);
CharSequence w=(CharSequence)json_data.get(“结果”);
Toast.makeText(getApplicationContext(),w,Toast.LENGTH_SHORT).show();
}
捕获(JSONException e)
{
Log.e(“Log_标记”,“错误解析数据”+e.toString());
Toast.makeText(getApplicationContext(),“JsonArray失败”,Toast.LENGTH\u SHORT.show();
}
}
});
}
私有布尔值isEmailValid(字符串电子邮件){
返回android.util.Patterns.EMAIL_ADDRESS.matcher(EMAIL.matches();
}
有人知道吗请帮我提前谢谢
public void afterTextChanged(Editable s) {
if(Is_Valid_Email_Address(edittext3.getText().toString())){
send.setEnabled(true);
}else{
send.setEnabled(false);
}
}
也许试试这个?也将其应用于edittext4
试试这种方法。如果将其更改为布尔值@newbeee\u Is Valid\u Email\u地址,我会收到一个错误