2017-06-20 40 views
0

堆棧溢出,如何檢查是否在一個堆棧的範圍內刷卡

我想檢查是否發生嵌套的堆棧視圖內滑動。在我的具體的例子,我有以下層次:

  • 首先Stackview
    • 二Stackview
      • 標籤
      • 標籤

我想獲得第二個堆棧視圖的座標,並確保用戶在該框內滑動。如何才能做到這一點?

感謝, Marcocypher

+0

您曾經試圖刷卡添加到您的第二個刷卡看法? – ovo

+0

我想你需要禁用第一個Stackview的交互 –

回答

2

最簡單的方法是將UISwipeGestureRecognizer附加到第二Stackview。只有當用戶在該區域平移時纔會觸發。

另一種選擇是將UISwipeGestureRecognizer附加到堆棧的更上方,並使用提供的方法來測試手勢的位置是否在視圖內。

這裏是行動的實施由UISwipeGestureRecognizer觸發:

@IBAction func gestureActivated(_ sender: UISwipeGestureRecognizer) { 
    let location = sender.location(in: secondStackView) 
    if secondStackView.point(inside: location, with: nil) { 
     print("Hit Second Stackview") 
    } else { 
     print("Outside Second Stackview") 
    } 
} 
相關問題