首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Kivy ScrollView没有填满整个窗口

Kivy ScrollView没有填满整个窗口
EN

Stack Overflow用户
提问于 2022-03-20 22:45:57
回答 1查看 38关注 0票数 0

我正在尝试编写一个Kivy文件,其中包括MDToolBar下面的滚动视图和MDBottomNavigation之上的滚动视图。我无法获得ScrollView内容来填充ToolBar下面和BottomNav之上的整个屏幕。它只填充有窗口的垂直跨度。如果去掉工具栏和底部,滚动视图将填充整个垂直跨度,而不会出现问题。任何关于获得滚动视图内容以完全填充的提示都将不胜感激。我试着改变压痕,但没有效果。提前谢谢。

屏幕截图

代码语言:javascript
复制
# WINDOW MANAGER

WindowManager:
    MainWindow:
    AboutWindow:

<MainWindow>:

    name: "main"

    BoxLayout:

        orientation: "vertical"

        MDToolbar:
            title: "Solar Weather"


        MDLabel:
            id: sub_title 
            text: "SUB TITLE" 
            halign: "center"
            size_hint: (1,0.2)

        ScrollView:

            size: self.size

            GridLayout:
                size_hint_y: None
                height: self.minimum_height
                width: self.minimum_width
                cols: 2
                spacing: "20dp"
                padding: "20dp"

                # SOLAR FLUX BOX #

                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                    MDLabel:
                        id: flux
                        text: "Solar Wind"
                        halign: "center"

                    MDLabel:
                        id: flux_value_id
                        text: ""
                        halign: "center"

                    MDLabel:
                        id: flux_time_id
                        text: ""
                        halign: "center"

                    MDRaisedButton:
                        text: "Refresh"
                        pos_hint: {"x":0}
                        size_hint: 1,1
                        md_bg_color: app.theme_cls.primary_color
                        on_release: root.calc_solar_flux()

                    MDRaisedButton:
                        text: "Details"
                        pos_hint: {"x":0}
                        size_hint: 1,1
                        md_bg_color: app.theme_cls.primary_color
                        on_release: root.calc_solar_flux()
                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                    MDLabel:
                        text: "Solar Wind"
                        halign: "center"

                    MDRaisedButton:
                        text: "Go Back"
                        md_bg_color: app.theme_cls.primary_color
                        on_release:
                            root.manager.current = "main"
                            root.manager.transition.direction = "right"



        MDBottomNavigation:

            MDBottomNavigationItem:
                name: 'Dark'
                text: "Dark Theme"
                icon: 'brightness-2'
                on_tab_release: root.dark_theme() 

            MDBottomNavigationItem:
                name: 'Light'
                text: "Light Theme"
                icon: 'brightness-5'
                on_tab_release: root.light_theme() 

            MDBottomNavigationItem:
                name: 'info'
                text: "About"
                icon: 'information'
                on_tab_release: 
                    root.manager.current = "about"
                    root.manager.transition.direction = "left"

            MDBottomNavigationItem:
                name: 'option 2'
                text: "Relaod"
                icon: 'reload'





#: include about.kv
EN

回答 1

Stack Overflow用户

发布于 2022-03-22 20:13:29

我希望这能帮到别人。我不得不相当广泛地重写kv文件,但它有效。

代码语言:javascript
复制
# WINDOW MANAGER

WindowManager:
    MainWindow:
    AboutWindow:

<MainWindow>:

    name: "main"

    BoxLayout:

        orientation: "vertical"

        MDLabel:
            id: title 
            text: "SOLAR WEATHER" 
            halign: "left"
            size_hint: (1,0.1)
            padding_x: 20
            pos_hint: {"x":0.0,"y":0.9}
            md_bg_color: app.theme_cls.primary_dark

        MDLabel:
            id: sub_title 
            text: "SUB TITLE" 
            halign: "center"
            size_hint: (1,0.1)
            pos_hint: {"x":0.0,"y":0.8}


        ScrollView:

            size: self.size
            pos_hint: {"x":0,"y":0.1}

            GridLayout:
                size_hint_y: None 
                height: self.minimum_height
                width: self.minimum_width
                cols: 2
                spacing: "20dp"
                padding: "20dp"

                # SOLAR FLUX BOX #

                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    spacing: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                    MDLabel:
                        id: flux
                        text: "SOLAR FLUX"
                        halign: "center"

                    MDLabel:
                        id: flux_value_id
                        markup: True
                        text: ""
                        halign: "center"

                    MDLabel:
                        id: flux_time_id
                        text: ""
                        halign: "center"
                    MDRaisedButton:
                        text: "Refresh"
                        pos_hint: {"x":0}
                        size_hint: 1,1
                        md_bg_color: app.theme_cls.primary_color
                        on_release: root.calc_solar_flux()

                    MDRaisedButton:
                        text: "Details"
                        pos_hint: {"x":0}
                        size_hint: 1,1
                        md_bg_color: app.theme_cls.primary_color
                        on_release: root.calc_solar_flux()

            # SUN SPOT NUMBER BOX #

                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    spacing: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                    MDLabel:
                        id: ssn 
                        text: "SUN SPOT NUMBER"
                        halign: "center"

                    MDLabel:
                        id: ssn_value_id
                        markup: True
                        text: ""
                        halign: "center"
                    MDLabel:
                        id: ssn_date_id
                        text: ""
                        halign: "center"

                    MDRaisedButton:
                        text: "Refresh"
                        pos_hint: {"x":0}
                        size_hint: 1,1
                        md_bg_color: app.theme_cls.primary_color
                        on_release: root.calc_sunspot_number()

                    MDRaisedButton:
                        text: "Details"
                        pos_hint: {"x":0}
                        size_hint: 1,1
                        md_bg_color: app.theme_cls.primary_color
                        on_release: root.calc_sunspot_number()

                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                MDCard:
                    orientation: "vertical"
                    padding: "8dp"
                    spacing: "8dp"
                    size_hint: 1, None
                    height: "210dp"
                    elevation: 5

                    MDLabel:
                        text: "Solar Wind"
                        halign: "center"

                    MDRaisedButton:
                        text: "Go Back"
                        md_bg_color: app.theme_cls.primary_color
                        on_release:
                            root.manager.current = "main"
                            root.manager.transition.direction = "right"
        GridLayout:

            size_hint_y: None 
            height: self.minimum_height
            width: self.minimum_width
            cols: 3 
            spacing: "80dp"
            padding: "20dp"
            MDIconButton:
                name: "Dark" 
                text: "Dark Theme" 
                icon: "brightness-2"
                on_release: root.dark_theme()
                md_bg_color: app.theme_cls.primary_dark

            MDIconButton:
                id: light_theme_icon
                name: "Light" 
                text: "Light Theme" 
                icon: "brightness-5"
                on_release: root.light_theme()
                md_bg_color: app.theme_cls.primary_dark

            MDIconButton:
                name: "info" 
                text: "About" 
                icon: "information"
                on_release: 
                    root.manager.current = "about"
                md_bg_color: app.theme_cls.primary_dark

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

https://stackoverflow.com/questions/71551229

复制
相关文章

相似问题

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