Kivy Python-填充整个浮动布局屏幕的文本输入框

Kivy Python-填充整个浮动布局屏幕的文本输入框,python,kivy,textinput,kivy-language,Python,Kivy,Textinput,Kivy Language,我在Kivy中遇到了TextInput问题 当我将它添加到我的一个屏幕上现有的FloatLayout时,它占据了整个窗口,即使指定了高度。我希望将其保留在.py文件中,因此请不要在.kv文件中添加任何用于调整大小的样式选项 class WebsiteInput(Screen): def __init__(self, **kwargs): super(WebsiteInput, self).__init__(**kwargs) Clock.schedule_

我在Kivy中遇到了TextInput问题

当我将它添加到我的一个屏幕上现有的
FloatLayout
时,它占据了整个窗口,即使指定了高度。我希望将其保留在.py文件中,因此请不要在.kv文件中添加任何用于调整大小的样式选项

class WebsiteInput(Screen):
    def __init__(self, **kwargs):
        super(WebsiteInput, self).__init__(**kwargs)
        Clock.schedule_once(self._finish_init)

    def _finish_init(self, dt):
        # Title Label
        self.lbl1 = Label(text="Enter a URL to bind to this button:", pos=(self.x, self.height +132))
        self.lbl1.font_name = 'Montserrat-Bold.ttf'
        self.lbl1.font_size = 28
        self.ids.float_web.add_widget(self.lbl1)
        # URL Text Input
        self.web_input = TextInput(height=100)
        self.web_input.height = 100
        self.ids.float_web.add_widget(self.web_input)

正如你所看到的,我试着在两个不同的位置影响大小,但它仍然占据了整个窗口

要使
大小
属性生效,您需要在相应轴上将属性设置为
None

class WebsiteInput(Screen):
    def __init__(self, **kwargs):
        super(WebsiteInput, self).__init__(**kwargs)
        Clock.schedule_once(self._finish_init)

    def _finish_init(self, dt):
        # Title Label
        self.lbl1 = Label(text="Enter a URL to bind to this button:",
                          pos=(self.x, self.height +132))
        self.lbl1.font_name = 'Montserrat-Bold.ttf'
        self.lbl1.font_size = 28
        self.ids.float_web.add_widget(self.lbl1)
        # URL Text Input
        self.web_input = TextInput(height=100, 
                                   size_hint = (1,  None))
        self.ids.float_web.add_widget(self.web_input)

你能告诉我尺码和尺码的区别吗?它不是冗余的吗?@Austin它不是冗余的,
size
表示以像素为单位的绝对大小。另一方面,
size\u hint
表示大小,但相对于父级大小,它是父级大小的一小部分(范围0到1)。对于大小,小部件的大小始终相同,对于
size\u hint
,如果父部件增大,则子部件将增大以保持比例。在您的情况下,如果调整窗口大小,TextInput高度将始终为100,但宽度将增加以占据整个FloatLayout宽度(1=100%)。