Так у меня есть представление коллекции карт, и то, что я хочу, когда я пальцем влево Я хочу следующий пункт, который будет располагаться в середине, this doesn't work with paging enabled
UISwipeGestureRecognizer и CollectionView прокрутки к следующему пункту indexPath
Итак, когда я сажусь влево, я хочу, чтобы следующая карта была центрирована, это не работает с нормальным поведением, потому что я просто хочу пронести по одной карте.
Так я добавил UISwipeGestureRecognizer
и disabled scrolling on the collection view
класса ViewController: UIViewController, UICollectionViewDataSource {
@IBOutlet var joke_cards: UICollectionView!
override func viewDidLoad() {
super.viewDidLoad();
//Add gestures
let leftSwipeGest = UISwipeGestureRecognizer(target: self, action: #selector(funcForGesture))
leftSwipeGest.direction = .left
joke_cards.addGestureRecognizer(leftSwipeGest)
}
func funcForGesture(sender: UISwipeGestureRecognizer){
if sender.direction == .left {
//scroll to next item
}
}
Теперь моя проблема заключается в том, как я могу перейти к следующему пункту? потому что я не знаю indexPath? потому что, если я хочу использовать этот self.joke_cards.scrollToItem(at: indexPath, at: .centeredHorizontally, animated: true)
, мне понадобится указательный путь, поэтому я думаю, что мне нужно выяснить текущий indexPath в представлении и add one
, когда пользователь проведет поиск.
Любые предложения?
// обновленный Так мне удалось заставить его работать, но это работает только тогда, когда я красть в первый раз:
func funcForGesture(sender: UISwipeGestureRecognizer){
if sender.direction == .left {
//scroll to next item
let cellItems = self.joke_cards.indexPathsForVisibleItems
let next = cellItems[0] as! IndexPath
self.joke_cards.scrollToItem(at: next, at: .centeredHorizontally, animated: true)
}
}
Что ваша карта? Ячейка коллекции или –
Да, каждая карта представляет собой ячейку коллекции. – Uffo
Итак, вы можете использовать self.joke_cards.scrollToItem (at: indexPath, at: .centeredHorizontally, animated: true) в соответствии с вашими значениями массива –