日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IOS开发之手势—UIGestureRecognizer 共存

發(fā)布時間:2025/3/13 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IOS开发之手势—UIGestureRecognizer 共存 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在 iPhone 或 iPad 的開發(fā)中,除了用?touchesBegan / touchesMoved / touchesEnded?這組方法來控制使用者的手指觸控外,也可以用?UIGestureRecognizer?的衍生類別來進行判斷。用?UIGestureRecognizer?的好處在于有現(xiàn)成的手勢,開發(fā)者不用自己計算手指移動軌跡。UIGestureRecognizer的衍生類別有以下幾種:

  • UITapGestureRecognizer
  • UIPinchGestureRecognizer
  • UIRotationGestureRecognizer
  • UISwipeGestureRecognizer
  • UIPanGestureRecognizer
  • UILongPressGestureRecognizer

從命名上不難了解這些類別所對應(yīng)代表的手勢,分別是 Tap(點一下)、Pinch(二指往內(nèi)或往外撥動)、Rotation(旋轉(zhuǎn))、Swipe(滑動,快速移動)、Pan (拖移,慢速移動)以及 LongPress(長按)。這些手勢別在使用上也很簡單,只要在使用前定義并添加到對應(yīng)的視圖上即可。

// 定義一個 recognizer, 并加到需要偵測該手勢的 UIView 元件上
- (void)viewDidLoad {
UISwipeGestureRecognizer* recognizer;
// handleSwipeFrom 是偵測到手勢,所要呼叫的方法
recognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:selfaction:@selector(handleSwipeFrom)];
// 不同的 Recognizer 有不同的實體變數(shù)
// 例如 SwipeGesture 可以指定方向
// 而 TapGesture 則可以指定次數(shù)
recognizer.direction = UISwipeGestureRecognizerDirectionUp
[self.view addGestureRecognizer:recognizer];
[recognizer release];
}

- (void)handleSwipeFrom:(UISwipeGestureRecognizer*)recognizer {
// 觸發(fā)手勢事件后,在這里作些事情

// 底下是刪除手勢的方法
[self.view removeGestureRecognizer:recognizer];
} 問題來了。有些手勢其實是互相關(guān)聯(lián)的,例如 Tap 與 LongPress、Swipe與 Pan,或是 Tap 一次與Tap 兩次。當一個 UIView 同時添加兩個相關(guān)聯(lián)的手勢時,到底我這一下手指頭按的要算是 Tap 還是 LongPress?如果照預(yù)設(shè)作法來看,只要「先滿足條件」的就會跳出并呼叫對應(yīng)方法,舉例來說,如果同時注冊了 Pan 和 Swipe,只要手指頭一移動就會觸發(fā) Pan 然后跳出,因而永遠都不會發(fā)生 Swipe;單點與雙點的情形也是一樣,永遠都只會觸發(fā)單點,不會有雙點。

那么這個問題有解嗎?答案是肯定的,UIGestureRecognizer?有個方法叫做requireGestureRecognizerToFail,他可以指定某一個 recognizer,即便自己已經(jīng)滿足條件了,也不會立刻觸發(fā),會等到該指定的 recognizer 確定失敗之后才觸發(fā)。以同時支持單點與雙點的手勢為例,代碼如下:

- (void)viewDidLoad {
// 單擊的 Recognizer
UITapGestureRecognizer* singleRecognizer;
singleRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:selfaction:@selector(handleSingleTapFrom)];
singleTapRecognizer.numberOfTapsRequired = 1; // 單擊
[self.view addGestureRecognizer:singleRecognizer];

// 雙擊的 Recognizer
UITapGestureRecognizer* double;
doubleRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:selfaction:@selector(handleDoubleTapFrom)];
doubleTapRecognizer.numberOfTapsRequired = 2; // 雙擊
[self.view addGestureRecognizer:doubleRecognizer];

// 關(guān)鍵在這一行,如果雙擊確定偵測失敗才會觸發(fā)單擊
[singleRecognizer requireGestureRecognizerToFail:doubleRecognizer];
[singleRecognizer release];
[doubleRecognizer release];
}

?

轉(zhuǎn)載于:https://www.cnblogs.com/daguo/archive/2012/08/06/2624844.html

總結(jié)

以上是生活随笔為你收集整理的IOS开发之手势—UIGestureRecognizer 共存的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产成人手机在线 | av在线网址大全 | 日本熟妇毛耸耸xxxxxx | 九九色综合网 | 亚洲黄色网址大全 | 亚洲天堂精品在线观看 | 欧美大片在线看免费观看 | 精品无码人妻一区二区三区品 | 精品国产三级a∨在线 | 97国产精品视频 | 亚卅色图| 欧美日韩一区二区三区在线 | 久久艹中文字幕 | 丝袜 中出 制服 人妻 美腿 | 99视频在线免费观看 | 一二三区免费 | 天堂av片 | 99久久久久久 | 亚洲男人影院 | 麻豆91视频 | 91情侣在线 | 久久国产主播 | 久久精品一区二区 | 成年视频在线 | 日韩综合久久 | 伊人色综合久久久 | 无码人妻一区二区三区免费 | 99久久婷婷国产综合精品草原 | 秋霞啪啪片 | 日本在线观看免费 | 91成人一区二区三区 | 啪啪av导航| 好吊色在线观看 | 97操碰 | 性色av网站 | 视频一二三区 | 精品国产欧美一区二区三区成人 | 欧美一二区视频 | 国产91精品久久久久久久网曝门 | 久久精品亚洲无码 | 丰满肉肉bbwwbbww | 午夜日韩在线 | 日噜噜夜噜噜 | 亚洲精品www.| 欧美精品免费视频 | 日本不卡视频一区二区三区 | 欧美一区永久视频免费观看 | 最新免费av网站 | 日本不卡视频在线观看 | 伊人精品久久 | 国产午夜在线 | 久久久久久久久久久国产精品 | 欧美久久久久久久久久久久 | 97在线精品视频 | 午夜精品久久久久久久蜜桃 | 欧美大片网站 | 找av123导航 67194国产 | 18女人毛片 | 久久夜视频 | 99久久久无码国产精品性色戒 | 国产男女啪啪 | 在线观看日韩中文字幕 | 亚洲色欧美另类 | 日本人妻丰满熟妇久久久久久 | 国产视频日本 | 高h亲子乱h | 精品久久久久久久久久久aⅴ | 亚洲精品久久久久久久久久吃药 | 99在线精品视频免费观看软件 | 中文字幕一区二区三区精品 | 亚洲中文字幕一区二区 | 亚洲成av人在线观看 | 日韩性xx| 精品国产二区三区 | 国产精品高潮呻吟久久av黑人 | melody在线高清免费观看 | 亚洲黄色a级片 | 国产一区二区三区四 | 精品久久香蕉国产线看观看亚洲 | 亚洲s码欧洲m码国产av | 性欧美色图| 人妖一区 | 亚洲一区亚洲二区 | 欧美成人激情在线 | 男人天堂手机在线 | 欧美人禽杂交狂配 | 无码人妻精品一区二区中文 | 国产精品成人国产乱 | 大肉大捧一进一出好爽mba | 日本久草视频 | 国产一级自拍视频 | 好吊妞精品 | 干操网| 波多野结衣电车痴汉 | 亚洲第一大网站 | 中文字幕精品一区二区精 | av在线影音 | 3d成人动漫在线观看 | 香蕉久久久久久久av网站 |