Я использую Kivy Carousel для создания приложения.
Однако я хотел бы сохранить ручное управление каруселью и отключить действие прокрутки (я вручную вызову carousel.load_next)
Я просмотрел документацию, но не вижу способа отключить действие смахивания.
Если бы кто-нибудь мог мне помочь, я был бы признателен.
Большое спасибо, Сеота.
Вы можете отключить свайп пользователя, управляя scroll_timeout
. Если вы просто установите его на 0
, пользователь не сможет инициировать событие прокрутки.
from kivy.app import App
from kivy.uix.carousel import Carousel
from kivy.uix.image import AsyncImage
class CarouselApp(App):
def build(self):
carousel = Carousel(direction='right', scroll_timeout=0)
for i in range(10):
src = "http://placehold.it/480x270.png&text=slide-%d&.png" % i
image = AsyncImage(source=src, allow_stretch=True)
carousel.add_widget(image)
return carousel
CarouselApp().run()
Спасибо, Аутур, я отмечу как ответ. Я также обнаружил, что могу подклассировать Carousel и переопределить on_touch_move без ничего.
class MyCarousel(Carousel): def on_touch_move(self,touch): pass
Следующее может быть полезно:
использовать
scroll_distance: '<x>dp'