Моя коллекция отлично работает. Он показывает сетку фотографий и перечисляет сотни из них. Вы можете прокручивать по вертикали, чтобы прокручивать их все. Жизнь хороша. Однако у меня теперь есть новое требование. Мне нужно определить, когда пользователь щелкает влево или вправо. Мне нужно уметь перехватывать этот жест, чтобы я мог прикладывать поведение к левым и правым щелчкам, сохраняя возможности вертикальной прокрутки моего коллекции. Есть идеи?iOS Как обнаружить прокрутку влево или вправо на UICollectionView, который иначе прокручивает только по вертикали?
1
A
ответ
5
Вам нужны два распознавателей, один для листать влево, а другие для считывания права:
UISwipeGestureRecognizer* swipeUpGestureRecognizer = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(handleSwipeLeftFrom:)];
swipeUpGestureRecognizer.direction = UISwipeGestureRecognizerDirectionLeft;
и для обработчика:
- (void)handleSwipeLeftFrom:(UIGestureRecognizer*)recognizer {
}
Наконец, добавьте его в вид:
[view addGestureRecognizer:swipeUpGestureRecognizer];
То же самое для другого направления (просто измените все левые на права).
0
добавить UISwipeGestureRecognizer к клеткам настройки его направление, как показано ниже,
UISwipeGestureRecognizer *swipeRightDir = [[UISwipeGestureRecognizer alloc] initWithTarget:self action:@selector(didSwipeRightDirection:)];
swipeRightDir.delegate = self;
swipeRightDir.numberOfTouchesRequired = 1;
[swipeRightDir setDirection:UISwipeGestureRecognizerDirectionRight];