仿微信、QQ、头条图片滑动显示效果

3,991 阅读2分钟

介绍       

       如果将整个大图都显示在界面上,那么界面上其他的组件都会被挤掉,这个在本来就小的移动端设备上是体验很差的做法。现在很多的主流app都有这种查看大图的效果,比如微信、QQ、头条我都看到过这种效果。最初固定显示图片的上面部分,然后随着手势的滑动,图片在固定区域也跟着滑动,这样既能查看完整张图片,也不影响界面上其他的功能,甚至查看的时候都不需要点击放大。

        看到这个效果以后,也是比较好奇,觉得还不错。于是想去网上搜索一下这个效果,但是并没有搜索到,可能是我输入的关键字不对吧,说实话我也不知道这个效果叫什么。于是干脆根据自己的想法对这一效果进行了模仿,现在给大家分享一下,有需要的小伙伴可以去下载


实现思路

       这里图片其实只需要使用最简单的ImageView即可,不需要自定义控件就能做到。不过我们一般给ImageView设置图片都是调用ImageView.setImageResource(),这里如果直接调用的话肯定是显示整张图片,达不到想要的效果,更不可能实现随手势滑动了。

        这里要用到BitmapFactory类将图片转成Bitmap,然后就可以调用imageView.setImageBitmap()方法来设置经过处理后的图片,当然具体的处理就是根据大小对图片进行局部裁切,具体裁切的部位需要监听外面recyclerview的滑动来动态配置,这样才能做到手势的互动。

最后

        废话少说,直接贴出源码,感兴趣的同学可以去下载demo:

        demo下载地址:github.com/dongrong-fu…