我有一个简单的Kivy应用,显示一条消息,通知我是否有任何新的漫画要下载。它运行在以下代码上:
def build(self):
Window.size = (300, 300)
self.title = 'Comics Notificator'
self.icon = 'assets/icon.png'
return Label(text=to_display)
我在想,是否有可能让主窗口自动适应标签内部的尺寸,而不是手动设置标签,因为我真的不知道要下载的漫画数量
谢谢!
答案 0 :(得分:0)
texture_size属性是文本的大小,因此请与Window的大小绑定。在下面的示例中,我演示了当您向文本中添加更多字符时其大小如何调整。
from kivy.app import App
from kivy.uix.label import Label
from kivy.core.window import Window
from kivy.clock import Clock
class TestApp(App):
def build(self):
label = Label(text="Stack Overflow", font_size="40dp")
label.bind(texture_size=Window.setter('size')) # <---
Clock.schedule_interval(self.on_timeout, 1)
return label
def on_timeout(self, dt):
self.root.text += " :-)"
if __name__ == '__main__':
TestApp().run()