【问题标题】:Kivy moving label inside FloatLayoutFloatLayout 内的 Kivy 移动标签
【发布时间】:2020-11-30 19:27:29
【问题描述】:

您好,我想在应用顶部放置一条欢迎消息(如照片this

我在整个屏幕上使用 FloatLayout(因为我想稍后添加一些其他小部件)但问题是标签不会将自己定位在中心,而是像 this

这是我的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}

现在,如果我没有将 'x':0.5 放入 pos_hint 字典中,而是使用 center_x: root.center_x 仅当我调整窗口大小但它从第二个图像的位置开始时,图像才会移动到所需位置。

【问题讨论】:

    标签: python python-3.x kivy


    【解决方案1】:

    对于您的pos_hint,请使用:

    pos_hint: {'center_x': 0.5, 'top': 0.9}
    

    这将使Label 水平居中,Labeltop 将位于MainPage 高度的 90%。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-16
      • 1970-01-01
      • 1970-01-01
      • 2022-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多