IOS的一些手势方法(手势的tag值 绝对值 偏移量 中心点 等等)

本文介绍了在iOS开发中如何利用手势识别处理图片,包括手势的tag值获取、绝对值计算以及图像截取。通过示例展示了在循环中添加手势识别,并在点击事件中通过计算手势触发的图片中心点偏移量来进行拼图游戏的实现。同时,还涉及到了视图的平移、缩放和旋转操作。
摘要由CSDN通过智能技术生成

首先在手势的使用中 经常涉及到图片坐标的变化  有时候需要判断的时候就需要绝对值

绝对值:

int abs(int i) 返回整型参数i的绝对值 

double cabs(struct complex znum) 返回复数znum的绝对值 

double fabs(double x) 返回双精度参数x的绝对值 
long labs(long n) 返回长整型参数n的绝对值


而且有时候在循环当中添加手势的时候  需要知道手势的tag值   (一般来说 如果循环出来的每一个图片都有手势事件 那么这个图片的tag值就是手势的tag值)

表示的方法是:

 

UITapGestureRecognizer *tap = [[UITapGestureRecognizeralloc] initWithTarget:selfaction:@selector(tapGesRe:)];

  // 那么 [tap view].tag  就是它的tag值;

- (void)tapGesRe:(UITapGestureRecognizer *)sender

{

UITapGestureRecongnizer * tapGes = (UITapGestureRecongnizer *)sender;

  // 或者直接使用 [sender view].tag 

     UIImageView *imageView = (UIImageView *)[self.view viewWithTag:[tapGes view].tag];

}



截取图片的方法(准确的说  是将一张图分割成一块一块的 比如拼图游戏)

    UIImageView *iv = [[UIImageViewalloc] initWithFrame:CGRectMake(50,100, 100,100)];

    

    [self.viewaddSubview:iv];

    

    UIImage *img = [UIImageimageNamed:@"king2.png"];

    

    iv.image = [selfclipImage:img rect:CGRectMake(80,80, 50,50)];

    

    

}


- (UIImage *)clipImage:(UIImage*)img rect:(CGRect)rect

{

    CGImageRef imgRef =CGImageCreateWithImageInRect(img.CGImage, rect);

    

    UIImage *subImage = [UIImageimageWithCGImage:imgRef];

    

    return subImage;

    

}

下面是我自己写的一个拼图游戏  作为初学者 难免有错误  不要见笑

//宏头文件里定义的一些常量

#define SCR_LONGNUM 105

#define SCR_TAG 122

#define SCR_TEN 10

#define SCR_HUNDER 100

#define SCR_INTERVAL 5

#define SCR_BORDERWIDTH 3.f




//根视图里的代码如下

#import "RootViewController.h"

#import "Macro.h"


@interface RootViewController ()


@end


@implementation RootViewController

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值