首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用ScrollView时的KivyMD MDSwiper动画问题

使用ScrollView时的KivyMD MDSwiper动画问题
EN

Stack Overflow用户
提问于 2021-10-10 20:59:58
回答 1查看 69关注 0票数 0

我正在尝试在一个ScrollView屏幕中使用多个MDSwiper,但是MDSwiper when swipe事件被触发(图像大小应该调整)的动画不起作用,我也不知道为什么。在ScrollView之外,它可以正常工作。

main.py

代码语言:javascript
复制
from kivymd.app import MDApp
from kivy.lang import Builder
from kivymd.uix.screen import MDScreen
from kivymd.uix.boxlayout import MDBoxLayout

class MainScreen(MDScreen):
    pass

class MDNavigationLayout(MDBoxLayout):
    pass

class ContentNavigationDrawer(MDBoxLayout):
    pass

class TestApp(MDApp):

    def build(self):
        self.title = 'TestApp'
        view = Builder.load_file('main.kv')
        return view

if __name__ == '__main__':
    TestApp().run()

main.kv

代码语言:javascript
复制
<ContentNavigationDrawer>:
    orientation: 'vertical'
    padding: '8dp'
    spacing: '8dp'
    MDLabel:
        text: 'Title'
        font_style: 'Caption'
        size_hint_y: None
        height: self.texture_size[1]
    ScrollView:
        MDList:
            OneLineIconListItem:
                text: 'Item 1'
                on_press:
                    root.nav_drawer.set_state('close')
                IconLeftWidget:
                    icon: 'account'
<SwiperItem1@MDSwiperItem>:
    RelativeLayout:
        FitImage:
            source: 'image.jpg'
            radius: [20,]
        MDBoxLayout:
            adaptive_height: True
            spacing: '12dp'
            MDLabel:
                text: 'Image1'
                font_style: 'H5'
                size_hint_y: None
                height: self.texture_size[1]
                pos_hint: {'center_y': .5}
                opposite_colors: True

MDNavigationLayout:
    scrm: scrm
    ScreenManager:
        id: scrm
        main_screen: main_screen
        MainScreen:
            scrm: scrm
            nav_drawer: nav_drawer
            id: main_screen
    MDNavigationDrawer:
        id: nav_drawer
        md_bg_color: 1, 1, 1, .4
        ContentNavigationDrawer:
            scrm: scrm
            nav_drawer: nav_drawer

<MainScreen>:
    MDBoxLayout:
        orientation: 'vertical'
        size_hint: 1, 1
        ScrollView:
            MDList:
                size_hint_y: .8
                padding: '10dp'
                spacing: '10dp'
                MDSwiper:
                    id: swiper_1
                    size_hint_y: None
                    height: 260
                    SwiperItem1:
                    SwiperItem1:
                    SwiperItem1:
                MDSwiper:
                    id: swiper_2
                    size_hint_y: None
                    height: 260
                    SwiperItem1:
                    SwiperItem1:
                    SwiperItem1:
                MDSwiper:
                    id: swiper_3
                    size_hint_y: None
                    height: 260
                    SwiperItem1:
                    SwiperItem1:
                    SwiperItem1:

我需要一些建议(也许是一个kivymd bug,idk ),谢谢!

EN

回答 1

Stack Overflow用户

发布于 2021-10-11 07:22:28

您不应该在ScrollView小部件中放置可滚动的小部件。Kivy有个窃听器无法在垂直ScrollView中滚动水平内容。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69518941

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档