отключить жест смахивания для iCarousel

Я использую iCarousel для отображения массива изображений и хочу отключить жест смахивания. Я не нашел этого в документации. не уверен, что это выполнимо или нет


person Junchao Gu    schedule 23.06.2015    source источник
comment
так вы хотите программно изменить изображение?   -  person Nimit Parekh    schedule 23.06.2015


Ответы (3)


Если вы хотите отключить жест смахивания, я думаю, вы хотите сделать что-то вроде программного изменения изображения.

Для очень простого отключения взаимодействия пользователя с каруселью.

Если вы используете раскадровку, просто удалите галочку User Inreaction Enabled

введите здесь описание изображения

Если вы используете код, то следующий код отключит User Inreaction Enabled

yourcarousel.userInteractionEnabled = FALSE;

Пусть это поможет решить вашу проблему.

person Nimit Parekh    schedule 23.06.2015

@Junchao ГУ Если вы используете

https://github.com/nicklockwood/iCarousel

Они используют жест касания и жест панорамирования. Вы должны прокомментировать

    UIPanGestureRecognizer *panGesture = [[UIPanGestureRecognizer alloc] initWithTarget:self action:@selector(didPan:)];
panGesture.delegate = (id <UIGestureRecognizerDelegate>)self;
[_contentView addGestureRecognizer:panGesture];

//add tap gesture recogniser
UITapGestureRecognizer *tapGesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTap:)];
tapGesture.delegate = (id <UIGestureRecognizerDelegate>)self;
[_contentView addGestureRecognizer:tapGesture];

в файле iCarousel.m

Я надеюсь, что это поможет вам

person Achal Gandhi    schedule 23.06.2015
comment
но разве этот блок кода не отключает эффект автопрокрутки, который я хочу? - person Junchao Gu; 23.06.2015
comment
хорошо. почти уверен, что это сработает, но изменение исходного кода напрямую мне не кажется хорошей идеей. но спасибо :) - person Junchao Gu; 23.06.2015
comment
Много раз я менял исходный код, чтобы сделать его совместимым с моим приложением. Всегда делайте резервную копию основного исходного кода, а затем вносите в него изменения. - person Achal Gandhi; 24.06.2015

Плохая идея менять исходный код iCarousel. Я думаю, что лучше сделать следующее:

carouselView.contentView.gestureRecognizers?.removeAll()

Надеюсь, это поможет кому-то

person Vlad Pulichev    schedule 19.02.2018