【问题标题】:Kivy python have label text fit screen width even after changing text即使在更改文本后,Kivy python 的标签文本也适合屏幕宽度
【发布时间】:2021-05-09 12:00:19
【问题描述】:

在我的代码中,我使用texture_size:self.size 使标签中的文本完全适合屏幕的宽度。它有效,但是当我更新标签的文本时,它停止正确显示。我什至尝试过使用 texture_update,但它没有用。我对kivy不是很有经验,所以也许我在这里缺少解决方案。我确实在网上找到了一些 Scale 标签的东西,但它似乎太复杂了,所以我想知道是否有一种简单的方法来实现我想要的。谢谢你的时间。编辑:我能够实现我的目标。基本上我的应用程序使用多个屏幕,所以在我创建这个屏幕之前,当用户单击按钮来到这里,并在他们返回时将其删除。我留下这个,以防其他人有类似的问题。

【问题讨论】:

    标签: python kivy kivy-language


    【解决方案1】:

    我相信您希望text_size: self.size texture_size 处于只读状态。确保size_hint 也设置为适当的值,常用的设置组合是

    Label:
        size_hint_y: None
        text_size: self.width, None
        height: self.texture_size[1]
    

    意思是:

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

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

    【讨论】:

    • 好吧,我去看看。我已经实现了另一个解决方案,但这似乎也很有用而且很好。谢谢。我将其标记为答案。
    猜你喜欢
    • 2021-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-22
    • 1970-01-01
    • 1970-01-01
    • 2014-05-07
    • 1970-01-01
    相关资源
    最近更新 更多