Android下QQ空间查看大图特效

近期在做一个项目,里面有一个功能是实现Android QQ好友动态里面的缩略图放大,查看大图的效果。用过都知道,这个特效非常赞的,没用过的下载个玩玩吧。我刚開始以为放大的那个大图是一个Activity或者是一个Dialog。但是尝试过后发现怎么也实现不了那种效果(有实现出来的朋友的话还请相告,一起交流交流)。然后到android官网上发现了一个图片放大特效的demo。这个Demo确实是实现了QQ里面图片放大的基本效果,但是要求是Android 3.0以上才干用,由于里面用到Animator。我知道有个NineOldAndroids库实现了3.0以下也能用Animator,仅仅要又一次改写下就ok了。可是看大图还有pinch图片缩放,双击放大,单击图片还原等效果,而一般的实现基本上都是用ScaleAnimation实现,感觉效果不理想。然后在Github上发现了一个非常不错的的Demo叫Android-GridView-Zoom-Images-Animation-Tutorial,里面竟然实现了QQ空间缩略图放大和还原动画特效。看了下,也是须要Android3.0以上才干实现,实现原理和官网上那个demo差点儿相同。在Github上逛了下,发现了一个非常不错的PhotoView,两者配合基本上就是QQ好友动态里面要实现的特效了。以下是效果图:


缩略图界面,点击每一个缩略图,图片从缩略图所在位置放大到屏幕适应位置。


能够pinch缩放图片,也能够双击放大图片,单击图片缩放回去。


能够向右或者向左滑动图片切换图片。


ps:该project源代码已经开源,地址:https://github.com/ywenblocker/Android-Photo-Zoom。问下各位,在mac以下有什么好的制作gif图片的工具吗?我发的图片非常难表达动画效果。

Android 仿QQ图片选择器,包含图片裁剪,浏览大图功能。   博客地址:http://blog.csdn.net/junzia/article/details/53091606简单使用示例如需使用图片选择器功能,将chooser加入为依赖工程,然后使用指定功能:选择单张图片如果需要选择单张图片,调用:Intent intent=new Intent(IcFinal.ACTION_ALBUM); intent.putExtra(IcFinal.INTENT_MAX_IMG,1);   startActivityForResult(intent,1);裁剪如果需要选择单张图片并且裁剪,调用:Intent intent=new Intent(IcFinal.ACTION_ALBUM); intent.putExtra(IcFinal.INTENT_IS_CROP,true); startActivityForResult(intent,1);默认为圆形图片,大小为500*500。如果需要自行设定,给intent增加以下参数(目前功能未实现):intent.putExtra(IcFinal.INTENT_CROP_SHAPE,CropPath.SHAPE_RECT);   //矩形intent.putExtra(IcFinal.INTENT_CROP_WIDTH,512); //裁剪宽度intent.putExtra(IcFinal.INTENT_CROP_HEIGHT,280); //裁剪高度选择多张图片Intent intent=new Intent(IcFinal.ACTION_ALBUM); intent.putExtra(IcFinal.INTENT_MAX_IMG,9); startActivityForResult(intent,1);更多设置也许图片选择器默认的UI不符合你的要求,你可以选择利用ChooserSetting中的静态参数来更改图片选择器的效果:/**标题的背景颜色*/public static int TITLE_COLOR=0xFF584512;/**图片选择页,每行显示数*/public static int NUM_COLUMNS=3;/**图片加载失败的图片*/public static int errorResId=0;/**图片加载的占位图片*/public static int placeResId=R.mipmap.image_chooser_placeholder;/**图片加载的动画*/public static int loadAnimateResId=0;/**选中图片的滤镜颜色*/public static int chooseFilter=0x55000000;/**未被选中的图片的滤镜颜色*/public static int unChooseFilter=0;/**最新的图片集合显示名字*/public static String newestAlbumName="最新图片";/**最新图片集合的最大数量*/public static int newestAlbumSize=100;public static int albumPopupHeight=600;public static String tantoToast="";/**照片选择指示器*/public static IChooseDrawable chooseDrawable=new CircleChooseDrawable(true,0xFF25c2e6);如果这些也无法满足你的UI要求,你也可以参照EntryActivity重新写相册的入口Activity,参照CropActivity重写裁剪的入口Activity。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值