你好,我想在应用程序的顶部放一条欢迎信息(就像照片一样(
我对整个屏幕使用FloatLayout(因为我想稍后添加一些其他小部件(,但问题是标签不会将自己定位在中心,而是像这个一样
这是我的python代码:
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.widget import Widget
class MainPage(FloatLayout):
pass
class SmartMirrorApp(App):
def build(self, **kwargs):
return MainPage()
if __name__ == "__main__":
SmartMirrorApp().run()
这是我的kv文件:
#:kivy 1.10.1
<MainPage>:
canvas:
Color:
rgba: 1,0,1,0.5
Rectangle:
size: self.size
pos: self.pos
Label:
canvas:
Color:
rgba: 1,0,0,0.5
Rectangle:
size: self.size
pos: self.pos
text: "Welcome, you look beautiful today!"
font_size: 20
size_hint: None, None
size: self.texture_size
pos_hint: {'x': 0.5, 'y': 0.9}
现在,如果不在pos_hint字典中放入"x":0.5,而是使用center_x: root.center_x
只有当我调整窗口大小时,图像才会移动到所需位置,但它从第二个图像的位置开始。
对于您的pos_hint
,请使用:
pos_hint: {'center_x': 0.5, 'top': 0.9}
这将使Label
水平居中,并且Label
的top
将处于MainPage
高度的90%。