Kivy python的标签文本适合屏幕宽度,即使在更改文本后也是如此

Kivy python的标签文本适合屏幕宽度,即使在更改文本后也是如此,python,kivy,kivy-language,Python,Kivy,Kivy Language,在我的代码中,我使用了texture\u size:self.size使标签中的文本完全适合屏幕的宽度。它工作了,但是当我更新标签的文本时,它就不能正常显示了。我甚至试过使用纹理更新,但都没用。我对kivy不是很有经验,所以我可能错过了一个解决方案。我确实在网上找到了一些缩放标签的东西,但它似乎太复杂了,所以我想知道是否有一个简单的方法来实现我想要的。谢谢你抽出时间。编辑:我能够实现我的目标。基本上,我的应用程序使用多个屏幕,所以在我创建这个屏幕之前,当用户点击按钮来到这里,并在他们返回时删除它

在我的代码中,我使用了
texture\u size:self.size
使标签中的文本完全适合屏幕的宽度。它工作了,但是当我更新标签的文本时,它就不能正常显示了。我甚至试过使用纹理更新,但都没用。我对kivy不是很有经验,所以我可能错过了一个解决方案。我确实在网上找到了一些缩放标签的东西,但它似乎太复杂了,所以我想知道是否有一个简单的方法来实现我想要的。谢谢你抽出时间。编辑:我能够实现我的目标。基本上,我的应用程序使用多个屏幕,所以在我创建这个屏幕之前,当用户点击按钮来到这里,并在他们返回时删除它。我将保留此选项,以防其他人有类似问题。

我相信您想要只读的
text\u size:self.size
texture\u size。确保将
size\u hint
也设置为适当的值,可以使用常用的设置组合

Label:
    size_hint_y: None
    text_size: self.width, None
    height: self.texture_size[1]
这意味着:

  • 小部件设置自己的高度
  • 纹理应与可用的水平空间一样大
  • 高度应为生成纹理的高度

这可能是一个很好的默认设置,因为这通常是人们需要的,但让他们默认会限制人们想要其他东西。

好的,我来看看这个。我已经实现了另一个解决方案,但这看起来确实很有用,也很好。谢谢我将把这个标记为答案。