Luban—— Android图片压缩工具
来源:互联网 发布:java认证考试一年几次 编辑:程序博客网 时间:2024/05/16 20:28
1.导入:
2.使用compile 'io.reactivex:rxandroid:1.2.1'compile 'io.reactivex:rxjava:1.1.6'compile 'top.zibin:Luban:1.0.9'
Listener方式
Luban
内部采用IO
线程进行图片压缩,外部调用只需设置好结果监听即可:
Luban.get(this) .load(File) //传人要压缩的图片 .putGear(Luban.THIRD_GEAR) //设定压缩档次,默认三挡 .setCompressListener(new OnCompressListener() { //设置回调 @Override public void onStart() { // TODO 压缩开始前调用,可以在方法内启动 loading UI } @Override public void onSuccess(File file) { // TODO 压缩成功后调用,返回压缩后的图片文件 } @Override public void onError(Throwable e) { // TODO 当压缩过去出现问题时调用 } }).launch(); //启动压缩
3.RxJava
方式:RxJava
调用方式请自行随意控制线程:
Luban.get(this) .load(file) .putGear(Luban.THIRD_GEAR) .asObservable() .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .doOnError(new Action1<Throwable>() { @Override public void call(Throwable throwable) { throwable.printStackTrace(); } }) .onErrorResumeNext(new Func1<Throwable, Observable<? extends File>>() { @Override public Observable<? extends File> call(Throwable throwable) { return Observable.empty(); } }) .subscribe(new Action1<File>() { @Override public void call(File file) { // TODO 压缩成功后调用,返回压缩后的图片文件 } }).launch(); //启动压缩
4. 方法对应表方法名 功能 load(File file)传入要压缩的文件setFilename(String filename)设置压缩后图片命名putGear(int gear)设置压缩档次
阅读全文
0 0
- Luban—— Android图片压缩工具
- Luban—— Android图片压缩工具
- Android——Luban图片压缩工具
- Luban(鲁班) —— Android图片压缩工具,仿微信朋友圈压缩策略。
- Android——Luban图片压缩算法学习
- android Luban 图片压缩
- Android—图片上传压缩工具类
- android使用luban压缩图片
- Android图片压缩利器——Luban(鲁班),智商二百五……
- 图片压缩工具——pngquant
- 图片压缩算法机制—近微信压缩机制的Luban
- android 图片压缩工具类
- Android图片压缩工具类
- Android图片压缩工具类
- Android图片压缩工具类
- android图片压缩工具类
- android 图片压缩工具类
- android图片压缩工具
- 改变文字大小
- JS 日历
- ubuntu16.10 docker 配置ngixn + php7 + mysql
- Nginx配置文件详解(nginx.conf)
- android集成谷歌地图
- Luban—— Android图片压缩工具
- 配置Keepalived实现Mysql双主高可用配置(完整配置)
- C++运算符重载
- mount共享目录后无法使用也无法卸载之解决方法记录
- java 第三方登录之QQ登录
- 五行与四季
- P3402 最长公共子序列(nlogn)
- C++学习之关于指针的一些思考
- Android M 多网络应用