android之常用工具类
来源:互联网 发布:mysql查看root密码 编辑:程序博客网 时间:2024/05/18 00:12
SharedPreference工具类
import android.content.Context;import android.content.SharedPreferences;/** * SharedPreference操作类 */public class SpUtils { private static final String spFileName = "app"; public static String getString(Context context, String strKey) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); String result = setPreferences.getString(strKey, ""); return result; } public static String getString(Context context, String strKey, String strDefault) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); String result = setPreferences.getString(strKey, strDefault); return result; } public static void putString(Context context, String strKey, String strData) { SharedPreferences activityPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); SharedPreferences.Editor editor = activityPreferences.edit(); editor.putString(strKey, strData); editor.commit(); } public static Boolean getBoolean(Context context, String strKey) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); Boolean result = setPreferences.getBoolean(strKey, false); return result; } public static Boolean getBoolean(Context context, String strKey, Boolean strDefault) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); Boolean result = setPreferences.getBoolean(strKey, strDefault); return result; } public static void putBoolean(Context context, String strKey, Boolean strData) { SharedPreferences activityPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); SharedPreferences.Editor editor = activityPreferences.edit(); editor.putBoolean(strKey, strData); editor.commit(); } public static int getInt(Context context, String strKey) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); int result = setPreferences.getInt(strKey, -1); return result; } public static int getInt(Context context, String strKey, int strDefault) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); int result = setPreferences.getInt(strKey, strDefault); return result; } public static void putInt(Context context, String strKey, int strData) { SharedPreferences activityPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); SharedPreferences.Editor editor = activityPreferences.edit(); editor.putInt(strKey, strData); editor.commit(); } public static long getLong(Context context, String strKey) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); long result = setPreferences.getLong(strKey, -1); return result; } public static long getLong(Context context, String strKey, long strDefault) { SharedPreferences setPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); long result = setPreferences.getLong(strKey, strDefault); return result; } public static void putLong(Context context, String strKey, long strData) { SharedPreferences activityPreferences = context.getSharedPreferences( spFileName, Context.MODE_PRIVATE); SharedPreferences.Editor editor = activityPreferences.edit(); editor.putLong(strKey, strData); editor.commit(); }}
Toast工具类
import android.content.Context;import android.view.Gravity;import android.widget.Toast;/** * Toast操作类 */public class ToastUtils { private static Toast shortToast = null; public static void makeShortText(Context context,String msg) { if (context == null) { return; } if (shortToast == null) { shortToast = Toast.makeText(context, msg, Toast.LENGTH_SHORT); } else { shortToast.setText(msg); } shortToast.show(); } private static Toast longToast = null; public static void makeLongText(String msg, Context context) { if (context == null) { return; } if (longToast == null) { longToast = Toast.makeText(context, msg, Toast.LENGTH_LONG); } else { longToast.setText(msg); } longToast.show(); } public static void showLong(Context context,String msg){ makeLongText(msg, context); } public static void showLong(Context context,int id){ makeLongText(context.getResources().getString(id), context); } public static void showShort(Context context,String msg){ makeShortText(context, msg); } public static void showShort(Context context,int id){ makeShortText(context, context.getResources().getString(id)); } public static void showCenterToast(Context context, String msg) { Toast toast = Toast.makeText(context, msg, Toast.LENGTH_SHORT); toast.setGravity(Gravity.CENTER, 0, 0); toast.show(); }}
dip与px之间的转换
import android.util.DisplayMetrics;public class DensityUtils { private static float scale; public static float getScale(Context context) { if (scale==0){ DisplayMetrics metrics = context.getResources().getDisplayMetrics(); scale = metrics.density; } return scale; } /** * dip转化为px */ public static int dip2px(int dip, Context context){ return (int) (dip*getScale(context)+0.5f); } /** * px转化为dip */ public static int px2dip(int px,Context context){ return (int)(px/getScale(context)+0.5f); }}
Log工具类
public class LogUtils { private static final boolean DEBUG = BuildConfig.DEBUG; public static void i(String tag, String msg) { if (DEBUG) android.util.Log.i(tag, msg); } public static void e(String tag, String msg) { if (DEBUG) android.util.Log.e(tag, msg); } public static void d(String tag, String msg) { if (DEBUG) android.util.Log.d(tag, msg); } public static void v(String tag, String msg) { if (DEBUG) android.util.Log.v(tag, msg); } public static void w(String tag, String msg) { if (DEBUG) android.util.Log.w(tag, msg); }}
正则工具类
/** * 正则工具类 提供验证邮箱、手机号、电话号码、身份证号码、数字等方法 */ public final class RegexUtils { /** * 验证Email * * @param email * email地址,格式:zhangsan@sina.com,zhangsan@xxx.com.cn,xxx代表邮件服务商 * @return 验证成功返回true,验证失败返回false ^ :匹配输入的开始位置。 \:将下一个字符标记为特殊字符或字面值。 * :匹配前一个字符零次或几次。 + :匹配前一个字符一次或多次。 (pattern) 与模式匹配并记住匹配。 x|y:匹配 x 或 * y。 [a-z] :表示某个范围内的字符。与指定区间内的任何字符匹配。 \w :与任何单词字符匹配,包括下划线。 * * {n,m} 最少匹配 n 次且最多匹配 m 次 $ :匹配输入的结尾。 */ public static boolean checkEmail(String email) { String regex = "^(\\w)+(\\.\\w+)*@(\\w)+((\\.\\w{2,3}){1,3})$"; return Pattern.matches(regex, email); } /** * 验证身份证号码 * * @param idCard * 居民身份证号码15位或18位,最后一位可能是数字或字母 * @return 验证成功返回true,验证失败返回false */ public static boolean checkIdCard(String idCard) { String regex = "[1-9]\\d{13,16}[a-zA-Z0-9]{1}"; return Pattern.matches(regex, idCard); } /** * 验证手机号码(支持国际格式,+86135xxxx...(中国内地),+00852137xxxx...(中国香港)) * * @param mobile * 移动、联通、电信运营商的号码段 * <p> * 移动的号段:134(0-8)、135、136、137、138、139、147(预计用于TD上网卡) * 、150、151、152、157(TD专用)、158、159、187(未启用)、188(TD专用) * </p> * <p> * 联通的号段:130、131、132、155、156(世界风专用)、185(未启用)、186(3g) * </p> * <p> * 电信的号段:133、153、180(未启用)、189 * </p> * @return 验证成功返回true,验证失败返回false */ public static boolean checkMobile(String mobile) { String regex = "(\\+\\d+)?1[3458]\\d{9}$"; return Pattern.matches(regex, mobile); } /** * 验证固定电话号码 * * @param phone * 电话号码,格式:国家(地区)电话代码 + 区号(城市代码) + 电话号码,如:+8602085588447 * <p> * <b>国家(地区) 代码 :</b>标识电话号码的国家(地区)的标准国家(地区)代码。它包含从 0 到 9 * 的一位或多位数字, 数字之后是空格分隔的国家(地区)代码。 * </p> * <p> * <b>区号(城市代码):</b>这可能包含一个或多个从 0 到 9 的数字,地区或城市代码放在圆括号—— * 对不使用地区或城市代码的国家(地区),则省略该组件。 * </p> * <p> * <b>电话号码:</b>这包含从 0 到 9 的一个或多个数字 * </p> * @return 验证成功返回true,验证失败返回false */ public static boolean checkPhone(String phone) { // String regex = "(\\+\\d+)?(\\d{3,4}\\-?)?\\d{7,8}$"; String regex = "^1\\d{10}$"; return Pattern.matches(regex, phone); } /** * 验证整数(正整数和负整数) * * @param digit * 一位或多位0-9之间的整数 * @return 验证成功返回true,验证失败返回false */ public static boolean checkDigit(String digit) { String regex = "\\-?[1-9]\\d+"; return Pattern.matches(regex, digit); } /** * 验证整数和浮点数(正负整数和正负浮点数) * * @param decimals * 一位或多位0-9之间的浮点数,如:1.23,233.30 * @return 验证成功返回true,验证失败返回false */ public static boolean checkDecimals(String decimals) { String regex = "\\-?[1-9]\\d+(\\.\\d+)?"; return Pattern.matches(regex, decimals); } /** * 验证空白字符 * * @param blankSpace * 空白字符,包括:空格、\t、\n、\r、\f、\x0B * @return 验证成功返回true,验证失败返回false */ public static boolean checkBlankSpace(String blankSpace) { String regex = "\\s+"; return Pattern.matches(regex, blankSpace); } /** * 验证中文 * * @param chinese * 中文字符 * @return 验证成功返回true,验证失败返回false */ public static boolean checkChinese(String chinese) { String regex = "^[\u4E00-\u9FA5]+$"; return Pattern.matches(regex, chinese); } /** * 验证日期(年月日) * * @param birthday * 日期,格式:1992-09-03,或1992.09.03 * @return 验证成功返回true,验证失败返回false */ public static boolean checkBirthday(String birthday) { String regex = "[1-9]{4}([-./])\\d{1,2}\\1\\d{1,2}"; return Pattern.matches(regex, birthday); } /** * 验证URL地址 * * @param url * 格式:http://blog.csdn.net:80/xyang81/article/details/7705960? 或 * http://www.csdn.net:80 * @return 验证成功返回true,验证失败返回false */ public static boolean checkURL(String url) { String regex = "(https?://(w{3}\\.)?)?\\w+\\.\\w+(\\.[a-zA-Z]+)*(:\\d{1,5})?(/\\w*)*(\\??(.+=.*)?(&.+=.*)?)?"; return Pattern.matches(regex, url); } /** * 匹配中国邮政编码 * * @param postcode * 邮政编码 * @return 验证成功返回true,验证失败返回false */ public static boolean checkPostcode(String postcode) { String regex = "[1-9]\\d{5}"; return Pattern.matches(regex, postcode); } /** * 匹配IP地址(简单匹配,格式,如:192.168.1.1,127.0.0.1,没有匹配IP段的大小) * * @param ipAddress * IPv4标准地址 * @return 验证成功返回true,验证失败返回false */ public static boolean checkIpAddress(String ipAddress) { String regex = "[1-9](\\d{1,2})?\\.(0|([1-9](\\d{1,2})?))\\.(0|([1-9](\\d{1,2})?))\\.(0|([1-9](\\d{1,2})?))"; return Pattern.matches(regex, ipAddress); } public static boolean checkNickname(String nickname) { String regex = "^[a-zA-Z0-9\u4E00-\u9FA5_]+$"; return Pattern.matches(regex, nickname); } public static boolean hasCrossSciptRiskInAddress(String str) { String regx = "[`~!@#$%^&*+=|{}':;',\\[\\].<>~!@#¥%……&*——+|{}【】‘;:”“’。,、?-]"; if (str != null) { str = str.trim(); Pattern p = Pattern.compile(regx, Pattern.CASE_INSENSITIVE); Matcher m = p.matcher(str); return m.find(); } return false; }}
Color工具类
import android.graphics.Color;/** * Color解析,可以防止颜色混搭错误 */public class ChartColorUtils { public final static int tabCommonTextColor= Color.parseColor("#000000"); public final static int tabSelectedTextColor= Color.parseColor("#00ff00"); public final static int tabIndictorColor= Color.parseColor("#ffffff");}
阅读全文
0 0
- android之常用工具类
- android之常用工具类
- android开发之常用工具类
- Android常用工具类之 Toast工具类
- Android常用工具类之 Log工具类
- Android之10个常用工具类
- Android 之常用工具类(后续)
- Android开发常用工具类之File操作
- Android开发常用工具类之图像处理
- Android开发常用工具类之图像处理
- Android开发常用工具类之File操作
- Android常用工具之Logutils
- Android常用工具之加密方式
- 常用工具类之GsonUtils
- 常用工具类之cookie
- 常用工具类之HttpclientUtil
- 常用工具类之JsonUtils
- Android 常用工具类封装
- 观察者模式 Java
- python基础之生成器迭代器
- Android——通过案例代码测试Activity的整个生命周期
- 关于调试opencv的那些坑
- 稀疏矩阵压缩存储的三元组表示法
- android之常用工具类
- linux 进程地址空间的一步步探究 (转的)
- android通过相册、相机设置头像
- cypher语言使用
- 蓝桥杯 第六届决赛 奇怪的数列 JAVA
- Python 的lambda 以及 filter , map , reduce
- 我与python约个会:12程序编程基础6:选择和循环
- 单应矩阵 基本矩阵 本质矩阵的区别与联系
- C. Naming Company