316044749 7 anni fa
parent
commit
5facb7a918

+ 18 - 2
app/src/main/java/com/ynstkz/shitu/android/activity/AlterPhoneNumberActivity.java

@@ -1,5 +1,6 @@
 package com.ynstkz.shitu.android.activity;
 
+import android.annotation.SuppressLint;
 import android.content.Intent;
 import android.os.Bundle;
 import android.support.annotation.Nullable;
@@ -10,8 +11,11 @@ import android.widget.ImageView;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
 
+import com.common.library.utils.ValidationUtil;
 import com.ynstkz.shitu.android.R;
+import com.ynstkz.shitu.android.application.STSign;
 import com.ynstkz.shitu.android.base.TitleBarActivity;
+import com.ynstkz.shitu.android.bean.UserInfoBean;
 
 import butterknife.Bind;
 
@@ -51,8 +55,13 @@ public class AlterPhoneNumberActivity extends TitleBarActivity {
         tvTitle.setText("修改手机号");
     }
 
+    @SuppressLint("SetTextI18n")
     private void initData(){
-
+        UserInfoBean userInfoBean = STSign.getInstance().getUserInfo();
+        if(userInfoBean != null && userInfoBean.getData() != null) {
+            tvHint.setText("更换手机号后,下次登录可使用新的手机号登录\n" +
+                    "当前手机号为:" + userInfoBean.getData().getMobile().replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2"));
+        }
     }
 
     private void setListener(){
@@ -60,7 +69,14 @@ public class AlterPhoneNumberActivity extends TitleBarActivity {
         btnNext.setOnClickListener(new View.OnClickListener() {
             @Override
             public void onClick(View view) {
-                startActivity(new Intent(AlterPhoneNumberActivity.this, AlterPhoneNumberCheckActivity.class));
+                String phoneNumber = editPhoneNumber.getText().toString();
+                if(ValidationUtil.mobile(phoneNumber)){
+                    Intent intent = new Intent(AlterPhoneNumberActivity.this, AlterPhoneNumberCheckActivity.class);
+                    intent.putExtra("phoneNumber", editPhoneNumber.getText().toString());
+                    startActivity(intent);
+                } else {
+                    showToast("手机格式不正确!");
+                }
             }
         });
     }

+ 4 - 1
app/src/main/java/com/ynstkz/shitu/android/activity/AlterPhoneNumberCheckActivity.java

@@ -32,6 +32,8 @@ public class AlterPhoneNumberCheckActivity extends TitleBarActivity {
     @Bind(R.id.btn_submit)
     Button btnSubmit;
 
+    private String phoneNumber;
+
     @Override
     protected void onCreate(@Nullable Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
@@ -50,7 +52,8 @@ public class AlterPhoneNumberCheckActivity extends TitleBarActivity {
     }
 
     private void initData(){
-
+        phoneNumber = getIntent().getStringExtra("phoneNumber");
+        tvPhoneNumber.setText(phoneNumber);
     }
 
     private void setListener(){

+ 179 - 0
library/src/main/java/com/common/library/utils/ValidationUtil.java

@@ -0,0 +1,179 @@
+package com.common.library.utils;
+
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+/**
+ * 作者:fuchangle on 2018/3/17 17:12
+ */
+
+public class ValidationUtil {
+
+
+    //手机号
+    public static String mobile = "^((13[0-9])|(14[0-9])|(15[0-9])|(16[0-9])|(17[0-9])|(18[0-9])|(19[0-9]))\\d{8}$";
+
+    //不允许为空
+    public static String blank = ".*[^ ].*";
+
+    //邮件
+    public static String email = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([0-9a-z_\\-]*)(\\.(com|cn|inc|org|cc|edu|de)*){1,2}([a-z]{2})?$";
+
+    //QQ,允许为空
+    public static String tencentQQAllowNull = "((^$)|([1-9][0-9]{4,11}))";
+
+    //QQ
+    public static String tencentQQ = "[1-9][0-9]{4,11}";
+
+    //网址,允许为空
+    public static String urlAllowNull = "((^$)|(http|https)+://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?)";
+
+    //网址
+    public static String url = "(http|https)+://([\\w-]+\\.)+[\\w-]+(/[\\w- ./?%&=]*)?";
+
+    //微信,允许为空
+    public static String weixinAllowNull = "((^$)|(^[A-Za-z0-9]\\w{3,60}+$))";
+
+    //微信
+    public static String weixin = "^[A-Za-z0-9]\\w{3,60}+$";
+
+    //正整数
+    public static String PositiveInteger = "^[0-9]*[1-9][0-9]*$";
+
+    //年份正则表达式
+    public static String YearReg = "([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})";
+
+    //正整数或非负数
+    public static String NonnegativeNumber ="^(\\+?[1-9][0-9]*$)|(([0-9]+\\.[0-9]*[0-9][0-9]*))";
+
+    //不允许有任何空白
+    public static String NoAnyEmpty = "^[\\S]{5,30}$";
+
+    //日期
+    public static String DateReg ="^$|^((((1[6-9]|[2-9]\\d)\\d{2})-(0?[13578]|1[02])-(0?[1-9]|[12]\\d|3[01]))|(((1[6-9]|[2-9]\\d)\\d{2})-(0?[13456789]|1[012])-(0?[1-9]|[12]\\d|30))|(((1[6-9]|[2-9]\\d)\\d{2})-0?2-(0?[1-9]|1\\d|2[0-8]))|(((1[6-9]|[2-9]\\d)(0[48]|[2468][048]|[13579][26])|((16|[2468][048]|[3579][26])00))-0?2-29-))$";
+
+
+    //是否是Double数字类型
+    public static boolean isDouble(String value) {
+        if (value == null) {
+            return false;
+        }
+        Pattern pattern = Pattern.compile("[0-9]*(\\.?)[0-9]*");
+        return pattern.matcher(value).matches();
+    }
+
+    //是否是Long类型
+    public static boolean isValidLong(String str) {
+        try {
+            Long.parseLong(str);
+            return true;
+        } catch (NumberFormatException e) {
+        }
+        return false;
+    }
+
+    //是否是Int类型
+    public static boolean isValidInt(String str) {
+        try {
+            Integer.parseInt(str);
+            return true;
+        } catch (NumberFormatException e) {
+        }
+        return false;
+    }
+
+    public static boolean mobile(String str) {
+        return validata(str, mobile);
+    }
+
+    public static boolean blank(String str) {
+        return validata(str, blank);
+    }
+
+    /****
+     * 不为空,限制长度范围
+     * @param str
+     * @param start
+     * @param end
+     * @return
+     */
+    public static boolean blankforlenth(String str, int start, int end) {
+        String reg = "\\S{" + start + "," + end + "}";
+        return validata(str, reg);
+    }
+
+    /***
+     * 非负数
+     * @param str
+     * @return
+     */
+    public static boolean nonnegativeNumber(String str) {
+        return validata(str, NonnegativeNumber);
+    }
+
+    /****
+     * 不允许有任何空白
+     * @param str
+     * @return
+     */
+    public static boolean noAnyEmpty(String str) {
+        return validata(str, NoAnyEmpty);
+    }
+
+    /***
+     * 日期判断
+     * @param str
+     * @return
+     */
+    public static boolean isDateReg(String str) {
+        return validata(str, DateReg);
+    }
+
+    public static boolean eimail(String str) {
+        return validata(str, email);
+    }
+
+    public static boolean tencentQQAllNull(String str) {
+        return validata(str, tencentQQAllowNull);
+    }
+
+    public static boolean tencentQQ(String str) {
+        return validata(str, tencentQQ);
+    }
+
+    public static boolean webURLAllowNull(String str) {
+        return validata(str, urlAllowNull);
+    }
+
+    public static boolean webURL(String str) {
+        return validata(str, url);
+    }
+
+    public static boolean weixinAllowNull(String str) {
+        return validata(str, weixinAllowNull);
+    }
+
+    public static boolean weixin(String str) {
+        return validata(str, weixin);
+    }
+
+    public static boolean positiveInteger(String str) {
+        return validata(str, PositiveInteger);
+    }
+
+    public static boolean isyear(String str) {
+        return validata(str, YearReg);
+    }
+
+    public static boolean validata(String str, String type) {
+        Pattern p = Pattern.compile(type);
+
+        Matcher m = p.matcher(str);
+        return m.matches();
+    }
+
+    public static void main(String[] args) {
+        String xxx = "xxxxx";
+        System.out.println(blankforlenth(xxx,5, 10));
+    }
+}