public class UsualTools {
private static long lastClick;
public static boolean isShowPrintMsg = false;
public UsualTools() {
}
public static boolean isPhoneNumber(String input) {
String regex = "(1[0-9][0-9]|15[0-9]|18[0-9])\\d{8}";
Pattern p = Pattern.compile(regex);
return Pattern.matches(regex, input);
}
public static boolean checkPassword(String password, String checkPassword) {
return password.equals(checkPassword);
}
public static SpannableString setSpanWord(String word) {
SpannableString sp = new SpannableString(word);
sp.setSpan(new StyleSpan(3), 0, word.length(), 34);
return sp;
}
public static SpannableStringBuilder setStringColor(String word, String changePart, String color) {
char[] c = changePart.toCharArray();
SpannableStringBuilder style = new SpannableStringBuilder(word);
if(c.length != 0) {
int lastIndex = c.length - 1;
int start = word.indexOf(c[0]);
int end = start + lastIndex + 1;
style.setSpan(new ForegroundColorSpan(Color.parseColor(color)), start, end, 33);
return style;
} else {
return style;
}
}
public static SpannableStringBuilder setStringColor(String word, String changePart, int colorId) {
char[] c = changePart.toCharArray();
SpannableStringBuilder style = new SpannableStringBuilder(word);
if(c.length != 0) {
int lastIndex = c.length - 1;
int start = word.indexOf(c[0]);
int end = start + lastIndex + 1;
style.setSpan(new ForegroundColorSpan(colorId), start, end, 33);
return style;
} else {
return style;
}
}
public static SpannableStringBuilder setTwoStringColor(String word, String changePart, String color, String changePart2, String color2) {
char[] c = changePart.toCharArray();
char[] c2 = changePart2.toCharArray();
SpannableStringBuilder style = new SpannableStringBuilder(word);
if(c.length != 0) {
int lastIndex = c.length - 1;
int start = word.indexOf(c[0]);
int end = start + lastIndex + 1;
style.setSpan(new ForegroundColorSpan(Color.parseColor(color)), start, end, 33);
int lastIndex2 = c2.length - 1;
int start2 = word.indexOf(c2[0]);
int end2 = start2 + lastIndex2 + 1;
style.setSpan(new ForegroundColorSpan(Color.parseColor(color2)), start2, end2, 33);
return style;
} else {
return style;
}
}
public static SpannableStringBuilder setStringFontSize(String word, String changePart, int size) {
char[] c = changePart.toCharArray();
SpannableStringBuilder style = new SpannableStringBuilder(word);
if(c.length != 0) {
int lastIndex = c.length - 1;
int start = word.indexOf(c[0]);
int end = start + lastIndex + 1;
style.setSpan(new TextAppearanceSpan((String)null, 0, size, (ColorStateList)null, (ColorStateList)null), start, end, 33);
return style;
} else {
return style;
}
}
public static void showNetErrorToast(Context context) {
if(context != null) {
Toast.makeText(context, "网络连接异常", 0).show();
}
}
public static void showDataErrorToast(Context context) {
Toast.makeText(context, "数据解析出错", 0).show();
}
public static void showNoDataErrorToast(Context context) {
Toast.makeText(context, "没有数据", 0).show();
}
public static void showLastPageToast(Context context) {
Toast.makeText(context, "没有更多数据了", 0).show();
}
public static void showNoFunctionToast(Context context) {
Toast.makeText(context, "该功能暂未开通,敬请期待", 0).show();
}
public static void showShortToast(Context context, String text) {
Toast.makeText(context, text, 0).show();
}
public static void stopTooMuchClick() {
if(System.currentTimeMillis() - lastClick > 1000L) {
lastClick = System.currentTimeMillis();
}
}
public static boolean isNumeric(String str) {
Pattern pattern = Pattern.compile("[0-9]*");
return pattern.matcher(str).matches();
}
public static String TimestampToDate(String time, String dateFormat) {
if(isNumeric(time) && !time.equals("")) {
int length = time.length();
if(length == 13) {
time = time.substring(0, 10);
}
long timeI = (long)Integer.parseInt(time);
long temp = timeI * 1000L;
Timestamp ts = new Timestamp(temp);
Object date = new Date();
try {
date = ts;
} catch (Exception var11) {
var11.printStackTrace();
}
SimpleDateFormat formatter = new SimpleDateFormat(dateFormat);
String dateString = formatter.format((Date)date);
return dateString;
} else {
return time;
}
}
public static long dataToTime(String time, String dateFormat) {
SimpleDateFormat sdr = new SimpleDateFormat(dateFormat, Locale.CHINA);
try {
Date e = sdr.parse(time);
long l = e.getTime();
return l;
} catch (Exception var6) {
var6.printStackTrace();
return 0L;
}
}
public static String changeNullToEmpty(String nullString) {
return nullString.equals("null")?"":nullString;
}
public static String changeNullToZero(String nullString) {
return nullString.equals("null")?"0":nullString;
}
public static void telNumber(Context context, String phone) {
Intent intent = new Intent();
intent.setAction("android.intent.action.CALL");
intent.addCategory("android.intent.category.DEFAULT");
intent.setData(Uri.parse("tel:" + phone));
intent.setFlags(268435456);
context.startActivity(intent);
}
public static void showSoftKeyboard(EditText edit, Context context) {
InputMethodManager imm = (InputMethodManager)context.getSystemService("input_method");
if(imm.isActive()) {
imm.toggleSoftInput(0, 2);
} else {
imm.hideSoftInputFromWindow(edit.getApplicationWindowToken(), 0);
}
}
public static String getCurrentActivityName(Context context) {
ActivityManager am = (ActivityManager)context.getSystemService("activity");
List taskInfo = am.getRunningTasks(1);
ComponentName componentInfo = ((RunningTaskInfo)taskInfo.get(0)).topActivity;
return componentInfo.getClassName();
}
public static void jumpActivity(Context context, Class<?> toClass) {
Intent intent = new Intent(context, toClass);
intent.setFlags(268435456);
context.startActivity(intent);
}
public static void jumpActivity(Context context, Class<?> toClass, Bundle bundle) {
Intent intent = new Intent(context, toClass);
intent.setFlags(268435456);
intent.putExtra("bundle", bundle);
context.startActivity(intent);
}
public static void jumpActivityForResult(Context context, Class<?> toClass, int requestCode) {
Intent intent = new Intent(context, toClass);
((Activity)context).startActivityForResult(intent, requestCode);
}
public static void jumpActivityForResult(Context context, Class<?> toClass, Bundle bundle, int requestCode) {
Intent intent = new Intent(context, toClass);
intent.putExtra("bundle", bundle);
((Activity)context).startActivityForResult(intent, requestCode);
}
public static void loginOut(Context context, Class<?> toClass) {
Intent intent = new Intent(context, toClass);
intent.setFlags(268468224);
((Activity)context).startActivity(intent);
}
public static Bundle getIntentBundle(Activity activity) {
Bundle bundle = activity.getIntent().getBundleExtra("bundle");
return bundle;
}
public static int getViewMeasureHeight(View view) {
int w = MeasureSpec.makeMeasureSpec(0, 0);
int h = MeasureSpec.makeMeasureSpec(0, 0);
view.measure(w, h);
int height = view.getMeasuredHeight();
return height;
}
public static int getViewMeasureWidth(View view) {
int w = MeasureSpec.makeMeasureSpec(0, 0);
int h = MeasureSpec.makeMeasureSpec(0, 0);
view.measure(w, h);
int width = view.getMeasuredWidth();
return width;
}
public static int getViewHeight(View view) {
int w = MeasureSpec.makeMeasureSpec(0, 0);
int h = MeasureSpec.makeMeasureSpec(0, 0);
view.measure(w, h);
int height = view.getHeight();
return height;
}
public static int getViewWidth(View view) {
int w = MeasureSpec.makeMeasureSpec(0, 0);
int h = MeasureSpec.makeMeasureSpec(0, 0);
view.measure(w, h);
int width = view.getWidth();
return width;
}
public static int pxToDip(Context context, float pxValue) {
float scale = context.getResources().getDisplayMetrics().density;
return (int)(pxValue / scale + 0.5F);
}
public static int getScreenWidth(Context context) {
WindowManager manager = (WindowManager)context.getSystemService("window");
Display display = manager.getDefaultDisplay();
int width = display.getWidth();
return width;
}
public static int getScreenHeight(Context context) {
WindowManager manager = (WindowManager)context.getSystemService("window");
Display display = manager.getDefaultDisplay();
int height = display.getHeight();
return height;
}
public static String getAppVerson(Context context) {
PackageInfo info = null;
PackageManager manager = context.getPackageManager();
try {
info = manager.getPackageInfo(context.getPackageName(), 0);
String e = info.versionName;
return e;
} catch (NameNotFoundException var4) {
var4.printStackTrace();
return "";
}
}
public static int getAppVersonCode(Context context) {
PackageInfo info = null;
PackageManager manager = context.getPackageManager();
try {
info = manager.getPackageInfo(context.getPackageName(), 0);
int e = info.versionCode;
return e;
} catch (NameNotFoundException var4) {
var4.printStackTrace();
return 1;
}
}
public static void hideSoftKeyboard(Activity activity) {
InputMethodManager inputMethodManager = (InputMethodManager)activity.getSystemService("input_method");
if(inputMethodManager != null) {
View localView = activity.getCurrentFocus();
if(localView != null && localView.getWindowToken() != null) {
IBinder windowToken = localView.getWindowToken();
inputMethodManager.hideSoftInputFromWindow(windowToken, 0);
}
}
}
public static String stringToMD5(String string) {
byte[] hash;
try {
hash = MessageDigest.getInstance("MD5").digest(string.getBytes("UTF-8"));
} catch (NoSuchAlgorithmException var7) {
var7.printStackTrace();
return null;
} catch (UnsupportedEncodingException var8) {
var8.printStackTrace();
return null;
}
StringBuilder hex = new StringBuilder(hash.length * 2);
byte[] var6 = hash;
int var5 = hash.length;
for(int var4 = 0; var4 < var5; ++var4) {
byte b = var6[var4];
if((b & 255) < 16) {
hex.append("0");
}
hex.append(Integer.toHexString(b & 255));
}
return hex.toString();
}
public static String stayPoint(float number, int stayNumber) {
NumberFormat ddf1 = NumberFormat.getNumberInstance();
ddf1.setMaximumFractionDigits(stayNumber);
String s = ddf1.format((double)number);
return s;
}
public static void sendMessage(Context context, String phone) {
Uri uri = Uri.parse("smsto:" + phone);
Intent intent = new Intent("android.intent.action.SENDTO", uri);
intent.putExtra("sms_body", "");
context.startActivity(intent);
}
public static int getRandomNumber(int maxValue, int minValue) {
int random = (int)((double)minValue + Math.random() * (double)(maxValue - minValue + 1));
return random;
}
public static void showPrintMsg(String title, String msg) {
if(isShowPrintMsg) {
Log.d("showPrintMsg", title + "=" + msg);
}
}
public static void showPrintMsg(String msg) {
if(isShowPrintMsg) {
Log.d("showPrintMsg", msg);
}
}
public static String getWeekday(int year, int monthOfYear, int dayOfMonth) {
int y = year - 1;
byte c = 20;
int d = dayOfMonth + 12;
int w = (y + y / 4 + c / 4 - 2 * c + 26 * (monthOfYear + 1) / 10 + d - 1) % 7;
String myWeek = null;
switch(w) {
case 0:
myWeek = "日";
break;
case 1:
myWeek = "一";
break;
case 2:
myWeek = "二";
break;
case 3:
myWeek = "三";
break;
case 4:
myWeek = "四";
break;
case 5:
myWeek = "五";
break;
case 6:
myWeek = "六";
}
return myWeek;
}
}
android验证通用类
最新推荐文章于 2025-08-14 10:05:59 发布
