前言
众所周知,PhotoView是一个开源的图片控件。
下面是PhotoView 的介绍
PhotoView 是一款扩展自 Android ImageView ,支持通过单点 / 多点触摸来进行图片缩放的智能控件。
特性:
支持单点 / 多点触摸,即时缩放图片;
支持平滑滚动;
在滑动父控件下能够运行良好;(例如:ViewPager)
虽然Baseflow的PhotoView很好用,但部分需求还是无法满足客户的定制。
正文
山寨的PhotoView的接口跟Baseflow的PhotoView差不多,支持如:
-
支持单点 / 多点触摸,即时缩放图片
-
支持平滑滚动
-
在滑动父控件下能够运行良好
-
支持旋转[旋转后支持适配屏幕高宽]
-
支持设置缩放和双击tap范围等
当然,部分效果可能没有Baseflow的好,但基本功能都满足。
下载
V1.6@PhotoView
-
-
优化双击缩放判断
/** * 双击缩放以显示区域中心进行缩放 */ private boolean mDoubleTapZoomCenter = true; public void setDoubleTapZoomCenter(boolean doubleTapZoomCenter) { mDoubleTapZoomCenter = doubleTapZoomCenter; }
使用
把PhotoView.jar放入/libs/中
implementation fileTree(include: ['*.jar'], dir: 'libs')
常用方法
//单机击监听 mPhotoView.setOnSingleTapListener(mOnSingleTapListener);
//scale变化监听 mPhotoView.setOnScaleChangedListener(mOnScaleChangeListener)
//是否支持双击 mPhotoView.setCanDoubleTap(true);
//适配可显示区域 mPhotoView.setScreenSize(MediaUtils.getScreenWidth(), MediaUtils.getScreenHeight());
一般图片全屏显示,但是也存在不全屏显示。
//旋转角度 mPhotoView.setRotation(angle)
//放大 mPhotoView.zoomIn() //传入的值越大,放大越快 mPhotoView.setScaleFactor(1.1f)
//缩小 mPhotoView.zoomOut() //传入的值越小,缩放越快 mPhotoView.setScaleFactor(0.9f)
//恢复默认状态 mPhotoView.resetDefault()
如果是显示区域变化了[全屏和非全屏切换],导致图片显示区域不一样时,不能调用resetDefault()会有问题
mPhotoView.resetTranslate(); loadImage();//自己实现的。
这个jar,需要传入setScreenSize(),这个别搞错了。
参考文章
-
《
赏一杯可乐
如果觉得OK,欢迎打赏一杯可乐哈,谢谢
有bug,欢迎留言
随机推荐
穆旦:冥想
为什么万物之灵的我们,遭遇还比不上一棵小树?今天你摇摇它,优越地微笑,明天就化为根下的泥土。为什么由手写出的这些字,竟比这只手更长久,健壮?它们会把腐烂的手抛开,而默默生存在一张破纸上。因此,我傲然生活了几十年,仿佛曾做着万物的导演,实则在它们长久的秩序下我只当一会小小的演员。...
为TV屏适配GridView选中并实现缩放动画
前言GridView自定义话选中框,并进行缩放处理,试用于展示图片和视频缩略图。好记性不如烂笔头正文原理在监听onKeyUp处理,此时选中的Item由Android处理完了,我们只需要刷新界面当old view跟new view不一样时才需要缩放处理。对图片缩放一定要用属性动画,对...
毕淑敏:提醒幸福
我们从小就习惯了在提醒中过日子。天气刚有一丝风吹草动,妈妈就说,别忘了多穿衣服。才相识了一个朋友,爸爸就说,小心他是个骗子。你取得了一点成功,还没容得乐出声来,所有关切着你的人一起说,别骄傲!你沉浸在欢快中的时候,自己不停地对自己说:“千万不可太高兴,苦难也许马上就要降临……”我们已经习惯了在提醒中...
毕淑敏: 流露你的真表情
学医的时候,老师出过一道题目:人和动物,在解剖上的最大区别是什么?学生们争先恐后发言,都想由自己说出那个正确的答案。这看起来并不是个很难的问题。有人说,是直立行走。先生说,不对。大猩猩也是可以直立行走的。有人说,是懂得用火。先生不悦道,我问的是生理上的区别,并不是进化工的异同。更有同学答,是...
CountDownTimer音量值淡入淡出
前言有时候播放开始播放和暂停时,需要做一个淡入淡出的效果,要不然急速暂停或播放,容易出现尖锐的杂音。正文显示对MediaPlayer播放和暂停时音量淡入和淡出代码片段。隐藏内容!付费阅读后才能查看!¥1 ¥3多个隐藏块只需支付一次付费阅读
书单-白岩松《痛并快乐着》
1”是健康,婚姻、事业、金钱就是后面一个又一个“0”;健康这个“1”在的时候,后面的“0”越多,你的人生越丰富;而前面这个健康的“1”一旦不在了,你后面的“0”再多,人生也只是一个“0”。【笔记:生命是革命的本钱】 背靠着大树,自己却并不是大树。【笔记:那就让自己成为大树吧】&nbs...
V1.5双击缩放图片,双击非图片所在位置(屏幕1920*720,照片图片是800*600)也会进行缩放,这样体验不太好。是否可以改为以显示中心进展缩放?
@流浪地球