手势识别器
一、?勢識別器
? ? ?是對觸摸事件做了封裝,我們?需??去判斷某個?勢 是否觸發(fā),?勢識別器本?起到了識別作?,我們把重?放在識別之 后要做什么操作上?。
二、 七種手勢識別器
? ?1,輕拍手勢識別器 ?UITapGestureRecognizer
? ?2,我們不會直接使??勢識別器這個抽象?類,?是根據需要使?特定的?勢識別器創(chuàng)建對象。
? ? ? ?1)、創(chuàng)建UITapGestureRecognizer對象,使?initWithTarget:action:?法;
? ? ? ?2)、配置要識別的?勢的相關信息;
? ? ? ?3)、將?勢添加到某個視圖上;
? ? ? ? ? ? ? 如:[imageView addGestureRecognizer:tap];
? ? ? ?4)、實現?勢識別器?定義的?法 ?
? ? ? ? ? ??獲取當前手勢放在哪一個view上 ??tap.view
三、 創(chuàng)建旋轉手勢
? ? ??
??創(chuàng)建旋轉手勢
?
? ? UIRotationGestureRecognizer *rotation = [[UIRotationGestureRecognizer alloc] initWithTarget:self action:@selector(doRotation:)];
?
? ? [imageView addGestureRecognizer: rotation];
?
? ? rotation.delegate = self;
?
? ? [rotation release];
?
? 注意:
?// 在做旋轉的時候對應兩個函數,一個是CGAffineTransformRotate(連續(xù)旋轉),另一個是CGAffineTransformMakeRotation(做一次旋轉)
? ? // 在上次的基礎上旋轉
? ? arotation.view.transform = CGAffineTransformRotate(arotation.view.transform, arotation.rotation);
?? ?
? ? // 讓旋轉角歸零,下次在新角度下旋轉,而不是累加
? ? arotation.rotation = 0;
?
四、創(chuàng)建捏合手勢
? ?創(chuàng)建
?// 創(chuàng)建捏合手勢
? ? UIPinchGestureRecognizer *pinch = [[UIPinchGestureRecognizer alloc] initWithTarget:self action:@selector(doPinch:)];
? ? [imageView addGestureRecognizer:pinch];
? ? pinch.delegate = self;
? ? [pinch release];
注意:
??pinch.view.transform = CGAffineTransformScale(pinch.view.transform, pinch.scale, pinch.scale);
? ? pinch.scale = 1;// 在原對象的基礎上變化
?
轉載于:https://www.cnblogs.com/qiushifalife/p/4758980.html
新人創(chuàng)作打卡挑戰(zhàn)賽發(fā)博客就能抽獎!定制產品紅包拿不停!總結
- 上一篇: 系统磁盘空间满的一个问题
- 下一篇: pat Simulation Test