Kivy: Swiping (Karussell & ScreenManager)

Ich habe zwei Bildschirme in einem ScreenManager, die beide eine Reihe von Schaltflächen in einer ScrollView enthalten. Die Idee ist, dass man durch Klicken auf eine Schaltfläche einen Schritt nach vorne (rechts) macht. Und treten Sie zurück (nach links), indem Sie zurückwischen. Also versuche ich, ein Karussell hinzuzufügen, um diesen einen Schlag auf der zweiten Seite zu implementieren. Das habe ich versucht:

self.root = ScreenManager(id = 'screen_manager')

main_screen = Screen(name = 'main_screen')

scroller = Scroller()
button_text = ['teach', 'move', 'b3', 'b4', 'b5', 'b6', 'b7', 'b8']
for text in button_text:
    scroller.view.add_widget(Field(name=text, direction='left', current='teach'))
main_screen.add_widget(scroller)
self.root.add_widget(main_screen)

carousel = Carousel(direction='left', id='carousel')

teach = Screen(name = 'teach')
scroller2 = Scroller()
button_text = ['vocab', 'drills']
for text in button_text:
    scroller2.view.add_widget(Field(name=text, direction='right', current='main_screen'))
carousel.add_widget(scroller2)
teach.add_widget(carousel)
self.root.add_widget(teach)

Aber da ich nur den zweiten Bildschirm hinzugefügt habe, ist es nicht möglich, in eine der beiden Richtungen zu wischen. Karussellload_slide()ie @ -Methode verwendet eine Folie als Argument. Unter Rutsche verstehen sie ein Karussell. Angesichts der Tatsache, dass ich viele Seiten haben werde, muss das Karussell wahrscheinlich mithilfe von @ dynamisch geladen werdeadd_widget() undremove_widget(). Würde mich über ein paar Hinweise freuen.

Arbeitsbeispiel für den Code, den ich bisher habe:http: //dpaste.com/33464R

Antworten auf die Frage(4)

Ihre Antwort auf die Frage