微信图片点击放大效果

1.通过上下文获取当前图片
2.动态添加一个UIImageView
3.计算目标位置的frame 做属性动画
4.动画完毕移除imageVIew,创建对应的图片查看器(未实现)

UIGraphicsBeginImageContextWithOptions(self.imageView.bounds.size, YES, 0);
    [self.imageView.layer renderInContext:UIGraphicsGetCurrentContext()];
    UIImage * image = UIGraphicsGetImageFromCurrentImageContext();
    UIImageView * coverView = [[UIImageView alloc] initWithImage:image];
    coverView.frame = self.imageView.frame;
    [self.view addSubview:coverView];
    CGFloat w = [UIScreen mainScreen].bounds.size.width;
    CGFloat h = w / coverView.bounds.size.width * coverView.bounds.size.height;
     [UIView animateWithDuration:4 animations:^{
         coverView.frame = CGRectMake(([UIScreen mainScreen].bounds.size.width - w) * 0.5, ([UIScreen mainScreen].bounds.size.height - h) * 0.5, w, h);
     } completion:^(BOOL finished) {
         [coverView removeFromSuperview];
     }];
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 10,533评论 5 13
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 12,720评论 6 30
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,827评论 25 709
  • 2017.11.12 周日 高畅 富兰克林是同美国一同成长起来的的典型一代。从学徒工做起,靠自己的勤奋、智慧自...
    畅_759c阅读 1,638评论 0 1
  • 温哥华寄时令画, 白色雪人粉红娃。 门前玉兰树叶青, 充了嘴巴插头发。
    珠江潮平阅读 2,910评论 34 31