使用滚动(手势)重新加载 CollectionView
Reload CollectionView with Scrolling (Gesture)
我在 UICollectionView 上工作,但我没有解决一些问题。有什么方法可以通过滚动重新加载 UICollectionView - 手势。
当我向右侧或左侧滚动时,我想更改活动周并刷新集合视图(白天的时间事件)。"The Calendar is JTAppleCalendar"
我搜索了一些文章,但没有得到任何答案。他们中的一些人使用 PanGestureRecogniser 但我没有实现它,我也不知道这是正确的方法。请分享你的力量
首先在 ViewDidLoad 或 Interface Builder 中以编程方式将 collectionView 滚动方向添加为 Vertical,并添加左右滑动手势以执行滑动时重新加载数据等操作。
let layout = self.CollectionView.collectionViewLayout as! UICollectionViewFlowLayout
layout.scrollDirection = UICollectionViewScrollDirection.vertical
func perfromGesture(){
let leftGesture = UISwipeGestureRecognizer(target: self, action: #selector(self.handleSwipes(sender:)))
let rightGesture = UISwipeGestureRecognizer(target: self, action: #selector(self.handleSwipes(sender:)))
leftGesture.direction = .left
rightGesture.direction = .right
self.CollectionView.addGestureRecognizer(leftGesture)
self.CollectionView.addGestureRecognizer(rightGesture)
}
@objc func handleSwipes(sender:UISwipeGestureRecognizer) {
if (sender.direction == .left) {
print("left")
//Perform Action
}
if (sender.direction == .right) {
print("right")
//Perform Action
}
}
当我向右侧或左侧滚动时,我想更改活动周并刷新集合视图(白天的时间事件)。"The Calendar is JTAppleCalendar"
我搜索了一些文章,但没有得到任何答案。他们中的一些人使用 PanGestureRecogniser 但我没有实现它,我也不知道这是正确的方法。请分享你的力量
首先在 ViewDidLoad 或 Interface Builder 中以编程方式将 collectionView 滚动方向添加为 Vertical,并添加左右滑动手势以执行滑动时重新加载数据等操作。
let layout = self.CollectionView.collectionViewLayout as! UICollectionViewFlowLayout
layout.scrollDirection = UICollectionViewScrollDirection.vertical
func perfromGesture(){
let leftGesture = UISwipeGestureRecognizer(target: self, action: #selector(self.handleSwipes(sender:)))
let rightGesture = UISwipeGestureRecognizer(target: self, action: #selector(self.handleSwipes(sender:)))
leftGesture.direction = .left
rightGesture.direction = .right
self.CollectionView.addGestureRecognizer(leftGesture)
self.CollectionView.addGestureRecognizer(rightGesture)
}
@objc func handleSwipes(sender:UISwipeGestureRecognizer) {
if (sender.direction == .left) {
print("left")
//Perform Action
}
if (sender.direction == .right) {
print("right")
//Perform Action
}
}