显示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();/**

恒创新客(317元)香港云服务器 2M带宽 三网CN2线路直连

恒创科技也有暑期的活动,其中香港服务器也有一定折扣,当然是针对新用户的,如果我们还没有注册过或者可以有办法注册到新用户的,可以买他们家的香港服务器活动价格,2M带宽香港云服务器317元。对于一般用途还是够用的。 活动链接:恒创暑期活动爆款活动均是针对新用户的。1、云服务器仅限首次购买恒创科技产品的新用户。1 核 1G 实例规格,单个账户限购 1台;其他活动机型,单个账户限购 3 台(必须在一个订单...

HyperVMart:加拿大vps,2核/3G/25G NVMe/G口不限流量/季付$10.97,免费Windows系统

hypervmart怎么样?hypervmart是一家成立了很多年的英国主机商家,上一次分享他家还是在2年前,商家销售虚拟主机、独立服务器和VPS,VPS采用Hyper-V虚拟架构,这一点从他家的域名上也可以看出来。目前商家针对VPS有一个75折的优惠,而且VPS显示的地区为加拿大,但是商家提供的测速地址为荷兰和英国,他家的优势就是给到G口不限流量,硬盘为NVMe固态硬盘,这个配置用来跑跑数据非常...

Gcore(gcorelabs)俄罗斯海参崴VPS简单测试

有一段时间没有分享Gcore(gcorelabs)的信息了,这是一家成立于2011年的国外主机商,总部位于卢森堡,主要提供VPS主机和独立服务器租用等,数据中心包括俄罗斯、美国、日本、韩国、新加坡、荷兰、中国(香港)等多个国家和地区的十几个机房,商家针对不同系列的产品分为不同管理系统,比如VPS(Hosting)、Cloud等都是独立的用户中心体系,部落分享的主要是商家的Hosting(Virtu...

android开发工具为你推荐
photoimpact教程Ulead PhotoImpact 如何把英文版的变成中文的!google地球打不开谷歌地球为啥打不开了?急!!!深圳公交车路线深圳公交线路无线路由器限速设置无线路由器能设置限速吗?或者说那个牌子的能。渗透测试渗透测试的专业服务二叉树遍历二叉树三种遍历方式原则?自助建站自助建站可信吗?网站联盟网站联盟的运作流程不兼容软件和电脑不兼容会怎样?不兼容手机软件与系统不兼容应该怎么办
下载虚拟主机 域名交易 上海服务器租用 浙江vps 代理域名备案 域名解析服务器 外国域名 好看的留言 贵州电信宽带测速 dropbox网盘 赞助 申请网站 dnspod 申请免费空间 域名转入 攻击服务器 乐视会员免费领取 好看的空间 开心online 贵州电信 更多