绘图、手势综合App

##手势的一些注意事项

对于 UITapGestureRecognizer 来说我们一般需要知道该点击手势在屏幕中的位置 (locationInView:self)

对于 UIPanGestureRecognizer 来说我们一般需要知道我们的滑动手势移动了多少距离 (translationInView:pan)

-(void) pan: (UIPanGestureRecognizer * ) pan {

    CGPoint transP = [pan translationInView: pan.view]; //$1 = (x = 0.73990527317289434, y = 0)

    CGPoint pont1 = [pan locationInView: self]; //$2 = (x = 198.16665649414063, y = 342.33332824707031)

    CGPoint pont2 = [pan locationInView: self.imageV]; //$3 = (x = 198.12057060663793, y = 342.61609831987914)

    pan.view.transform = CGAffineTransformTranslate(pan.view.transform, transP.x, transP.y);
    //复位
    [pan setTranslation: CGPointZero inView: pan.view];

}

[UIView animateWithDuration: 0.25 animations: ^ {
        self.imageView.alpha = 0;
    }completion: ^ (BOOL finished){
        self.imageView.alpha = 1;

        UIGraphicsBeginImageContextWithOptions(self.bounds.size, NO, 0);
        CGContextRef ctx = UIGraphicsGetCurrentContext();

        [self.layer renderInContext: ctx];

        UIImage * imageGot = UIGraphicsGetImageFromCurrentImageContext();

        UIGraphicsEndImageContext();

        [self.imageView removeFromSuperview];

        if (self.delegate && [self.delegate respondsToSelector: @selector(handleImageView: didOperatedImage: )]){
            [self.delegate handleImageView: self didOperatedImage: imageGot];
        }
    }
];

接下来来一个iOS图形绘制、旋转、长按、缩放、滑动等综合手势的一个 画图 项目

画图App效果图

##** 代码地址

转载于:https://www.cnblogs.com/hcxl/p/8280927.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值