KivyMD DatePicker不会随着屏幕尺寸调整大小

时间:2020-01-13 21:01:03

标签: python-3.x kivy kivy-language

我不确定如何根据屏幕尺寸动态调整MDDatePicker的大小,它不能像LabelsButtons那样正确调整,而是不规则地调整。

我在Kivy小部件中找不到太多的KivyMD文档。

您必须单击“选择日期”按钮以打开日期选择器

py文件

import kivy
from kivy.app import App
from kivy.properties import ObjectProperty, StringProperty, NumericProperty, ListProperty
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.lang import Builder
from kivy.uix.popup import Popup
from kivy.uix.label import Label
from kivy.core.text import Label as CoreLabel
from kivy.uix.button import Button
from kivy.core.window import Window
from kivymd.theming import ThemeManager
import mysql.connector
from kivymd.uix.picker import MDDatePicker
from kivy.uix.scrollview import ScrollView


Window.clearcolor = (1,1,1,1)

class Information(Screen):

    def select_date(self):
        picker = MDDatePicker(callback=self.got_date)
        picker.open()

    def got_date(self, the_date):
        print(the_date)

class WindowManager(ScreenManager):
    pass


class MyApp(App):
    theme_cls = ThemeManager()

    def build(self):
        kv = Builder.load_file("kivy.kv")
        sm = WindowManager()

        screens = [Information(name="information")]
        for screen in screens:
            sm.add_widget(screen)

        sm.current = "information"
        return sm


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

kv文件

<Information>:
    name: "information"

    NavigationLayout:
        id: nav_layout
        MDNavigationDrawer:
            NavigationDrawerIconButton:
                text: "Test"
                on_release: app.root.current = "login"

        FloatLayout:
            MDToolbar:
                pos_hint: {'top': 1}
                md_bg_color: 0.2, 0.6, 1, 1
                left_action_items: [['menu', lambda x: root.ids.nav_layout.toggle_nav_drawer()]]

            MDRaisedButton:
                text: "Select date"
                pos_hint: {"x": 0.35, "top": 0.6}
                on_release: root.select_date()

预先感谢

1 个答案:

答案 0 :(得分:0)

您可以在MDRaisedButton下尝试:

MDRaisedButton:
    size: root.width, root.height

或您需要调整大小的地方。 size命令的格式为size: x, y(在kv lang中