Android开发,关于ZxUtils的使用(一)

最近,由于公司项目中工具类的重复,冗余,萌生了写一个工具库的想法,经过一段时间的努力,ZxUtils诞生了。

ZxUtils包含了目前常规开发的大部分工具框架,并以简为主,能一句话解决的问题,就不要两句话。所以可能原本很复杂的一件事,你可能调用一下就可以解决了。

下面是我项目的GitHub地址。

https://github.com/StannyBing/ZXUtils

使用方法:

     先导入依赖包

      compile 'com.github.StannyBing:ZXUtils:1.3.11'    

    注意需要在项目的build里面添加以下代码
 
     maven { url "https://jitpack.io" }    

  在你的Application的onCreate中添加以下代码
  ZXApp.init(this, true);
  第二个参数是指是否为debug模式,如果为false,将停止工具类中的log输出,同时开始线程崩溃处理工具
  为true则代表此时为debug模式,如果遇到崩溃将直接抛出,方便定位错误。


由于工具过多,本文主要简单讲解使用方法,并不会涉及每个工具所有的方法,具体还需自行尝试。

另外需要注意的,上面我们调用了ZXApp.init(this,true)这个方法,已经给了一个全局context,所以工具库中很多方法就不需要再传入context了,除了部分必须传入当前view的context

1.ZXAnimUtil 动画相关

((ImageView) findViewById(R.id.btn_openAnimTest)).startAnimation(ZXAnimUtil.getRotateAnimationByCenter(2000, null));
注意其中的

ZXAnimUtil.getRotateAnimationByCenter(2000, null)
该方法是获取一个旋转动画,动画时间两秒完成,不设置动画监听。

类似的还有透明动画、隐藏动画等等


2.ZXAppUtil App相关工具

比如:

ZXAppUtil.installApp(this, file);
安装app,对就这么简单,代表了安装一个app,该方法还可以传入文件路径

另外还有卸载app,获取app信息,判断app是否处于前台,清除app数据,缓存等方法


3.ZXBitmapUtil Bitmap相关工具

Drawable drawable = ContextCompat.getDrawable(this, R.mipmap.test);
Bitmap bit = ZXBitmapUtil.drawableToBitmap(drawable);
该方法可以将一个drawable转换为bitmap对象,同样的还有字节数组转bitmap、bitmap转drawable、byte[]转drawable、bitmap旋转、bitmap圆角、

获取bitmap旋转角、bitmap压缩、bitmap合成等等相关方法。


4.ZXClipboardUtil 剪贴板相关工具类

ZXClipboardUtil.copyText(string)
ZXClipboardUtil.getText()

该工具类用于和剪贴板相关的工具,还有复制粘贴url,复制粘贴intent等等


5.ZXCrashUtil 崩溃相关工具类

该类用于收集app崩溃信息,并写入文件,开发者可以直接将文件传入后台判断崩溃原因,崩溃时间,崩溃所处位置

使用时,只需要

File file = ZXCrashUtil.getCrashFile()

在使用ZXApp.init(this,true)时,后面的布尔类型即是是否为debug模式,是就会开启该功能


6.ZXDataBaseUtil 数据库工具

ZXDataBaseUtil.getInstance().exexSQL(sql, bingargs)

可以很简单的进行sql语句编写,同样的还有sql增删改查,数据库建立,清除等


7.ZXDialogUtil Dialog工具类

该类是用于展示dialog,基于AlertDialog,是Materl Design,所以如果项目要求,要实现公司提供的UI界面,可能就需要自行实现了。

ZXDialogUtil.showInfoDialog(this, "提示", "是否退出?", null);
ZXDialogUtil.showLoadingDialog(this, "无进度条");
ZXDialogUtil.showLoadingDialog(this, "有进度条", 30);
dialog包含两种,普通dialog,和进度dialog,进度dialog包含了普通加载dialog和带进度条的dialog,他们的使用区别仅仅是是否传入了进度,同时,他们的展示是冲突的,也就是说不会同时出现多个进度dialog,避免了bug原因,导致出现很多dialog的情况。普通dialog包含了,基本信息dialog,确定取消dialog,列表dialog,checkbox dialog,以及自定义dialog等等。

同时,取消dialog也分为了两种情况

ZXDialogUtil.dismissDialog();
ZXDialogUtil.dismissLoadingDialog();

分别用于取消普通dialog和进度dialog,两种dialog不冲突,避免误取消的操作。


8.ZXFileUtil 文件相关工具类

该类专用于处理文件相关

ZXFileUtil.getFileName(path);
ZXFileUtil.rename(path, newName);

同样的还有判断文件是否存在,复制文件,删除文件及文件夹,获取文件uri,获取文件大小,根据不同文件类型打开文件(注意该方法可以打开几十种文件类型)等


9.ZXFormatCheckUtil 格式检测工具类
该类用于检测字符串格式

ZXFormatCheckUtil.isPhoneNum(num);
ZXFormatCheckUtil.isEmail(email);

还可以检测是否全数字,是否为身份证号码,是否是汉字,是否是银行卡号等等


10.ZXFragmentUtil Fragment相关工具类

该类可用于activity处理fragment相关事件

ZXFragmentUtil.addFragment(fragmentManager,fragment,id);
ZXFragmentUtil.removeFragment(fragment);

同样的还有替换fragment,fragment出栈,隐藏,查找,操作,等等


11.ZXImageLoaderUtil 图片加载工具类
该类基于当前流行的Glide图片加载框架,实现图片加载操作

ZXImageLoaderUtil.getBitmap(url, width, height);
改方法可以当做一个下载操作,根据url获取图片,width和height可以不传

ZXImageLoaderUtil.display(imageview, url);
将图片加载到iamgeview上

同样的可以加载url,uri,resource,file,bitmap等的图片

同时还可以选择加载大图,小图,原图,方图等样式


12.ZXIntentUtil Intent相关工具类

该类,用于获取各种intent

ZXIntentUtil.getInstallAppIntent(path);
ZXIntentUtil.getSharedImageIntent(content, uri);

上面是获取一个安装app意图和图片分享意图,同样的还有卸载意图、拨号、短信等等


13.ZXJsonUtil json相关工具类
用于处理json相关操作

JSONObject jsonObject = ZXJsonUtil.getJSONObject(jsonobject, key);
String value = ZXJsonUtil.getStringValue(jsonobject, key);

获取相关类型参数,进行了exception的处理,同样的还有bool类型,int类型等,同时还提供了list转json和json转list等的方法


14.ZXLogUtil log相关工具类

用于打印log,需要注意的是,如果在application中初始化ZXAPP时传入的false,即当前不是debug模式,将停止log的打印,避免不必要的消耗。

ZXLogUtil.loge(msg);
ZXLogUtil.logd(title, msg);
包含了所有层次的log打印,同时还提供了有title和无title的两种类型。

同时log打印除了要显示的数据,还显示了log位置,log所处的类所处的方法等信息,方便了查找。

下一篇 Android开发,关于ZxUtils的使用(二)


  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值