【发布时间】:2021-09-28 12:01:08
【问题描述】:
我正在 kivy 中制作游戏,当我关闭屏幕 (android) 或尝试调整窗口大小 (linux) 时,一些我已经离开屏幕的小部件返回到它们的起始位置。 我为此创建了一个最小的可重现示例:
example.py
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
class GameCanvas(BoxLayout):
def __init__(self, **kwargs):
super().__init__(**kwargs)
def start(self):
# move the label widget far away
self.children[0].pos = 10000, 10000
class Example(App):
pass
if __name__ == '__main__':
Example().run()
example.kv
GameCanvas:
<GameCanvas>:
Button:
text: 'Start Game'
size: root.width, root.height / 2
on_release: root.start()
Label:
text: 'Game Title'
size: root.width, root.height / 2
正如我按下按钮后所附图像显示的那样,标签“消失”(移动位置)但是当我尝试调整窗口大小时它又回来了。
为什么会这样?另外为什么它也会发生在android上?是不是跟 kivy 中的某些事件有关?
提前致谢!
【问题讨论】:
标签: python kivy kivy-language