python - 即使在更改文本后,Kivy python 的标签文本也适合屏幕宽度
问题描述
在我的代码中,我曾经texture_size:self.size
让标签中的文本完全适合屏幕的宽度。它有效,但是当我更新标签的文本时,它停止正确显示。我什至尝试过使用 texture_update,但它没有用。我对kivy不是很有经验,所以也许我在这里缺少解决方案。我确实在网上找到了一些 Scale 标签的东西,但它似乎太复杂了,所以我想知道是否有一种简单的方法来实现我想要的。谢谢你的时间。编辑:我能够实现我的目标。基本上我的应用程序使用多个屏幕,所以在我创建这个屏幕之前,当用户单击按钮来到这里,并在他们返回时将其删除。我留下这个,以防其他人有类似的问题。
解决方案
我相信您希望text_size: self.size
texture_size 只读。确保size_hint
也设置为适当的值,通常有用的设置组合是
Label:
size_hint_y: None
text_size: self.width, None
height: self.texture_size[1]
意思是:
- 小部件设置自己的高度
- 纹理应该与可用的水平空间一样大
- 高度应该是生成的纹理的高度
这可能是一个很好的默认值,因为它通常是人们需要的,但是让它们默认会限制想要其他东西的人。
推荐阅读
- node.js - 使用 node js 导入 React 组件文件
- php - 更改 PayPal 中的金额值
- javascript - 将 firebase 数据库值推送到新数组中
- css - 获取引导 css 文件
- javascript - 如何在 ionic 3 中的表 pdfmake.js 上显示两行
- go - Golang中空接口的比较
- android - 使用 Twilio Sdk 在 iOS Swift 中的视频基础应用程序
- animation - ng5 更新到 ng7 ie11 动画错误,对象不支持“匹配”属性或方法
- lua - Lua协程,无法恢复死协程
- android - 使用数据绑定时,SwipeRefreshLayout 进度不隐藏