照片选择区域功能的另一实现: 加动效

这篇博客介绍了另一种在iOS中实现照片选择区域功能的方法,通过控件和动画效果来增强用户体验。作者提到了rzmn/CropView的参考,并详细阐述了获取点的方法、视图层级设置、坐标对应关系以及手势移动识别。动画部分包括拖动角部时圆圈的放大和缩小,以及手势更新位置时的平滑动画。当出现交叉重联时,会自动调整四边形的连接。完整的实现代码可以在github repo中找到。
摘要由CSDN通过智能技术生成

前言:

之前写了两份相关的,

低仿扫描全能王的选择区域功能

仿扫描全能王的选择区域功能:拍照,旋转

思路就是从 touch 相关手势,识别点,直接绘制

不方便,简单地添加动画

本文介绍另一思路,通过控件

有参考 rzmn/CropView

思路具体

1, 拿到点,还是同样的三个方法,

touchesBegan, touchesMoved, touchesEnded

2, 视图层级
  • 功能视图 cropView, 添加在 image view 上,

功能视图 cropView 中, 识别手势

  • 画线,四条边,

var areaQuadrangle = SEAreaView()

添加在功能视图 cropView

2.1, 方便做动画,四个角都是控件, 添加在功能视图 cropView

class CornerView: UIView

拖动某个角,那个角落的圆圈变大;

放开那个角,那个角落的圆圈缩回

3,坐标的对应关系

imageView 设置为 sizeToFit,

默认,imageView 的 size > 上面看到的 image 的 size

( 当然,image.size 图片数据的 size 很大的 )

功能视图 cropView 的 frame = 上面看到的 image 的 frame

那么画线,四条边,var areaQ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值