2016-06-18 62 views
0

我的收藏視圖效果很好。它顯示一張照片的網格,並列出其中數百個。您可以垂直滑動來瀏覽所有內容。生活很好。但是,我現在有一個新的要求。我需要能夠檢測用戶何時向左或向右滑動。我需要能夠攔截此手勢,以便我可以將行爲附加到左右滑動,同時保持我的收藏視圖的垂直滾動功能不變。有任何想法嗎?UicollectionView在swift ios中的視圖之間滾動?

在swift?

如果它有助於參考繼承人鏈接到我的Github項目。

https://github.com/StarShowsStudios/GodCards

如果您打開該項目在Xcode中就可以看到詳細視圖控制器。它根據選定的收集單元控制器從名爲卡的plist文件中獲取信息。

回答

0

您可以添加左右滑動手勢識別器以檢測左右滑動。

override func awakeFromNib() { 
     super.awakeFromNib() 

// Add Left Swipe Gesture 
     let swipeLeft = UISwipeGestureRecognizer(target: self, action: #selector(SomeClass.respondToSwipeGesture(_:))) 
     swipeLeft.direction = UISwipeGestureRecognizerDirection.Left 
     self.addGestureRecognizer(swipeLeft) 

     // Add Right Swipe Gesture 
     let swipeRight = UISwipeGestureRecognizer(target: self, action: #selector(SomeClass.respondToSwipeGesture(_:))) 
     swipeRight.direction = UISwipeGestureRecognizerDirection.Right 
     self.addGestureRecognizer(swipeRight) 
    } 

    // This function detects Swipe direction and perform action 
    func respondToSwipeGesture(gesture: UIGestureRecognizer) { 

     if let swipeGesture = gesture as? UISwipeGestureRecognizer { 
      switch swipeGesture.direction { 
      case UISwipeGestureRecognizerDirection.Right: 
       print("Swiped right") 
       rightSwipeAction() 

      case UISwipeGestureRecognizerDirection.Left: 
       print("Swiped left") 
       leftSwipeAction() 

      default: 
       break 
      } 
     } 
    } 
相關問題