显示android开发 10个常用工具类

android开发工具  时间:2021-02-28  阅读:()

Android开发10个常用工具类

原文出处 张鸿洋的博客

打开大家手上的项目基本都会有一大批的辅助类今天特此整理出10个基本每个项目中都会使用的工具类用于快速开发~~

在此感谢群里给我发项目中工具类的兄弟/姐妹~

1、 日志工具类L.javap ac kage c om.zhy.utils;import android.util.Log;

*Lo g统一管理类public class Lprivate L()

/*cannot be instantiated*/throw new UnsupportedOperationExc eption(c annot be instantiatedpublic static boolean isDebug=true;//是否需要打印bug可以在application的onCreate函数里面初始化private static final String TAG=way

//下面四个是默认tag的函数public static void i(String msg)if(is Debug)

Lo g.i(TAG,m s g);public static void d(String msg)if(is Debug)

Lo g.d(TAG,ms g);public static void e(String msg)if(is Debug)

Lo g.e(TAG,m s g);public static void v(String msg)if(is Debug)

Lo g.v(TAG,ms g);

//下面是传入自定义tag的函数public static void i(String tag,String msg)if(is Debug)

Log.i(tag,ms g);public static void d(String tag,String msg)if(is Debug)

Log.i(tag,ms g);public static void e(String tag,String msg)if(is Debug)

Log.i(tag,ms g);public static void v(String tag,String msg)if(is Debug)

Log.i(tag,ms g);

}

网上看到的类注释上应该原创作者的名字很简单的一个类 网上也有很多提供把日

志记录到SDCard上的不过我是从来没记录过所以引入个最简单的大家可以进行评价是否需要扩充~~

2、 To ast统一管理类p ac kage c om.zhy.utils;import android.c ontent.Context;import android.widget.Toast;

*To ast统一管理类public classTprivate T()

/**cannot be instantiated**/throw new UnsupportedOperationExc eption(c annot be instantiatedpublic static boolean isShow=true;

/**

*短时间显示To as t

*@param context

*@param messagepublic static void showShort(Context context,CharSequence message)if(is Show)

Toast.makeText(c ontext,mes sage,Toast.LENGTH_SHORT).show();

/**

*短时间显示To as t

*@param context

*@param messagepublic static void showShort(Context context, int message)if(is Show)

Toast.makeText(c ontext,mes sage,Toast.LENGTH_SHORT).show();/**

*长时间显示To as t

*@param context

*@param messagepublic static void showLong(Context context,CharSequence message)if(is Show)

Toast.makeText(c ontext,mes s age,Toast.LENGTH_LONG).show();/**

*长时间显示To as t

*@param context

*@param messagepublic static void showLong(Context context, int message)if(is Show)

Toast.makeText(c ontext,mes s age,Toast.LENGTH_LONG).show();/**

* 自定义显示To as t时间

*@param context

*@param message

*@param durationpublic static void show(Context context,CharSequence message, int duration)if(is Show)

Toast.makeText(c ontext,mes s age,duration).show();

/**

* 自定义显示To as t时间

*@param context

*@param message

*@param durationpublic static void show(Context context, int message, int duration)if(is Show)

Toast.makeText(c ontext,mes s age,duration).show();

}

也是非常简单的一个封装能省则省了~~

3、 SharedPreferenc es封装类SPUtilsp ac kage c om.zhy.utils;import java.lang.reflect.Invoc ationTargetExc eption;import java.lang.reflec t.Method;import java.util.Map;import android.c ontent.Context;import android.c ontent.SharedPreferenc es;public class SPUtils

/**

*保存在手机里面的文件名public static final String FILE_NAME=share_data

/**

*保存数据的方法我们需要拿到保存数据的具体类型然后根据类型调用不同的保存方法

*@param context

*@param key

*@param objectpublic static void put(Context c ontext,String key,Object object)

SharedPreferences sp=context.getSharedPreferences(FILE_NAME,

Context.MODE_PRI VATE);

SharedPreferenc es.Editor editor=sp.edit();if(object instanceof String)editor.putString(key, (String)objec t);

} else if(object instanceof Integer)editor.putInt(key, (Integer)objec t);

} else if(object instanceof Boolean)editor.putBoo lean(key, (Boo le an)object);

} else if(object instanceof Float)editor.putFloat(key, (Float)objec t);

} else if(object instanceof Long)

editor.putLong(key, (Long)objec t);

} els eeditor.putString(key,object.toString());

SharedPreferenc es Compat.apply(editor);

/**

*得到保存数据的方法我们根据默认值得到保存的数据的具体类型然后调用相对于的方法获取值

*@param context

*@param key

*@param defaultObject

*@r eturnpublic static Object get(Context context,String key,Object defaultObject)

SharedPreferences sp=context.getSharedPreferences(FILE_NAME,

Context.MODE_PRI VATE);if(defaultObject instanceof String)return sp.getString(key, (String)defaultObjec t);

} else if(defaultObject instanceof Integer)return sp.getInt(key, (Integer)defaultObj ec t);

} else if(defaultObject instanceof Boolean)return sp.getBoo lean(key, (Boo lean)defaultObj ect);

} else if(defaultObject instanceof Float)return sp.getFloat(key, (Float)defaultObjec t);

} else if(defaultObject instanceof Long)

return sp.getLong(key, (Long)defaultObjec t);r eturn null;

/**

*移除某个key值已经对应的值

*@param context

*@param keypublic static void remove(Context context,String key)

SharedPreferences sp=c ontext.getSharedPreferences(FILE_NAME,Context.MODE_PRI VATE);

SharedPreferenc es.Editor editor=sp.edit();editor.remove(key);

SharedPreferenc es Compat.apply(editor);

/**

*清除所有数据

*@param contextpublic static void clear(Context context)

SharedPreferences sp=context.getSharedPreferences(FILE_NAME,Context.MODE_PRI VATE);

SharedPreferenc es.Editor editor=sp.edit();editor.clear();

SharedPreferenc es Compat.apply(editor);

/**

*查询某个key是否已经存在

*@param context

*@param key

*@r eturnpublic static boolean contains(Context context,String key)

SharedPreferences sp=context.getSharedPreferences(FILE_NAME,Context.MODE_PRI VATE);return sp.c ontains(key);

/**

*返回所有的键值对

*@param context

*@r eturnpublic static Map String, ?getAll(Context context)

SharedPreferences sp=context.getSharedPreferences(FILE_NAME,Context.MODE_PRI VATE);r eturn s p.g etAl l();

/**

*创建一个解决SharedPreferenc es Compat.apply方法的一个兼容类

*@author zhyprivate static class SharedPreferencesCompatprivate static final Method sApp lyMethod=findApp lyMethod();/**

UCloud:全球大促降价,云服务器全网最低价,1核1G快杰云服务器47元/年

ucloud:全球大促活动降价了!这次云服务器全网最低价,也算是让利用户了,UCloud商家调低了之前的促销活动价格,并且新增了1核1G内存配置快杰型云服务器,价格是47元/年(也可选2元首月),这是全网同配置最便宜的云服务器了!UCloud全球大促活动促销机型有快杰型云服务器和通用型云服务器,促销机房国内海外都有,覆盖全球20个城市,具体有北京、上海、广州、香港、 台北、日本东京、越南胡志明市、...

vpsdime:VPS内存/2核/VPS,4G内存/2核/50gSSD/2T流量/达拉斯机房达拉斯机房,新产品系列-Windows VPS

vpsdime上了新产品系列-Windows VPS,配置依旧很高但是价格依旧是走低端线路。或许vpsdime的母公司Nodisto IT想把核心产品集中到vpsdime上吧,当然这只是站长个人的猜测,毕竟winity.io也是专业卖Windows vps的,而且也是他们自己的品牌。vpsdime是一家新上来不久的奇葩VPS提供商,实际是和backupspy以及crowncloud等都是同一家公司...

iON Cloud七月促销适合稳定不折腾的用户,云服务器新购半年付8.5折,洛杉矶/圣何塞CN2 GT线路,可选Windows系统

iON Cloud怎么样?iON Cloud今天发布了7月份优惠,使用优惠码:VC4VF8RHFL,新购指定型号VPS半年付或以上可享八五折!iON的云服务器包括美国洛杉矶、美国圣何塞(包含了优化线路、CN2 GIA线路)、新加坡(CN2 GIA线路、PCCW线路、移动CMI线路)这几个机房或者线路可供选择,有Linux和Windows系统之分,整体来说针对中国的优化是非常明显的,机器稳定可靠,比...

android开发工具为你推荐
weipin唯品会的唯品钱包里的钱怎么用湖南商标注册湖南商标注册怎么办理spgnuxPC操作系统如何描述pwpw域名的技巧显卡温度多少正常电脑显卡温度多少正常?如何建立一个网站要建立一个网站怎么弄啊?godaddyGodaddy域名怎么接受ios系统iOS系统为什么那么好iphone6上市时间苹果六什么时候出的电子商务网站模板我想开发一个电子商务网站,但是想加入自己设计的模板,可以吗?
淘宝虚拟主机 解析域名 便宜vps 企业域名备案 cn域名个人注册 stablehost vps.net 便宜域名 jsp主机 私有云存储 服务器架设 网盘申请 支付宝扫码领红包 789 什么是web服务器 ssl加速 移动王卡 privatetracker hosting24 海外加速 更多