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

pacificrack7月美国便宜支持win VPS,$19.99/年,2G内存/1核/50gSSD/1T流量

pacificrack发布了7月最新vps优惠,新款促销便宜vps采用的是魔方管理,也就是PR-M系列。提一下有意思的是这次支持Windows server 2003、2008R2、2012R2、2016、2019、Windows 7、Windows 10,当然啦,常规Linux系统是必不可少的!1Gbps带宽、KVM虚拟、纯SSD raid10、自家QN机房洛杉矶数据中心...支持PayPal、...

数脉科技:阿里云香港CN2线路服务器;E3-1230v2/16G/240G SSD/10Mbps/3IP,月付374元

数脉科技怎么样?昨天看到数脉科技发布了7月优惠,如果你想购买香港服务器,可以看看他家的产品,性价比还是非常高的。数脉科技对香港自营机房的香港服务器进行超低价促销,可选择10M、30M的优质bgp网络。目前商家有优质BGP、CN2、阿里云线路,国内用户用来做站非常不错,目前E3/16GB阿里云CN2线路的套餐有一个立减400元的优惠,有需要的朋友可以看看。点击进入:数脉科技商家官方网站香港特价阿里云...

提速啦:美国多IP站群云服务器 8核8G 10M带宽 7IP 88元/月

提速啦(www.tisula.com)是赣州王成璟网络科技有限公司旗下云服务器品牌,目前拥有在籍员工40人左右,社保在籍员工30人+,是正规的国内拥有IDC ICP ISP CDN 云牌照资质商家,2018-2021年连续4年获得CTG机房顶级金牌代理商荣誉 2021年赣州市于都县创业大赛三等奖,2020年于都电子商务示范企业,2021年于都县电子商务融合推广大使。资源优势介绍:Ceranetwo...

android开发工具为你推荐
明星论坛谁能介绍几个关于明星的好看图片网站啊.?绵阳电信绵阳电信宽带资费公章制作word里如何制作公章?自助建站什么情况下采用自助建站方式建站好?伪静态静态与伪静态的区别?ps抠图技巧photoshop抠图技巧中小企业信息化中小企业信息化途径有哪些网易公开课怎么下载如何将网易公开课下载到电脑上?腾讯文章为什么最近腾讯网的文章评论都看不到数据库损坏数据库损坏是怎么回事啊?
vps 万网虚拟主机 域名拍卖 万网域名空间 工信部域名备案系统 ipage 七牛优惠码 重庆服务器托管 香港bgp机房 美国翻墙 香港机房托管 lamp配置 促正网秒杀 服务器维护方案 工作站服务器 smtp服务器地址 独立主机 万网空间 江苏徐州移动 服务器托管价格 更多