簡體   English   中英

快速獲取滑動手勢的方向

[英]Swift Get Direction of Swipe Gesture

我正在使用以下代碼在Swift中創建一個UIButton:

let button = UIButton()
button.addTarget(self, action: "tileSwiped:", forControlEvents: .TouchDragExit)

我的tileSwiped函數定義如下:

func tileSwiped(button: UIButton) {
}

我要做的是確定TouchDragExit事件發生的方向。更具體地說,我的按鈕是一個矩形,我想知道拖動是否在矩形的頂部,底部,左側或右側邊緣退出。

但是,在沒有訪問觸發函數調用的運動事件的情況下,我看不到一種方法。 但是,當然,我無法更改傳遞給tileSwiped函數的參數。 那么如何獲得“滑動”的方向呢?

(我願意改變聽手勢的方法,因為我認為這種方法不會帶我到任何地方,但是請注意,我確實需要將按鈕保留為參數。)

使用UISwipeGestureRecognizer會更容易,請參閱Apple文檔

您想要做的是:

  1. 創建一個UISwipeGestureRecognizer
  2. 指定您要識別的方向
  3. 將此識別器添加到按鈕
  4. 實現回調方法

例:

let button = UIButton();
// 1
let swipeGestureRecognizer = UISwipeGestureRecognizer(target: self, action: "swipe:");
// 2
swipeGestureRecognizer.direction = .Left
// 3
button.addGestureRecognizer(swipeGestureRecognizer)

// 4
func swipe(gestureRecognizer: UISwipeGestureRecognizer) {
    NSLog("left")
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM