为什么我的Kivy AnchorLayout卡在左下角?

时间:2016-04-09 15:25:15

标签: kivy

我在my.kv文件中有以下代码:

<UIWidget>:
    AnchorLayout:
        anchor_x: 'right'
        anchor_y: 'top'
        Button:
            size_hint: None, None
            text: 'Build'

UI Widget是一个空的Widget子类。

class UIWidget(Widget):
    pass

我的根小部件将UIWidget加载到自身中,如下所示:

class SimplifiedGameWidget(Widget):
    def __init__(self, **kwargs):
        super().__init__(self, **kwargs)
        self.layout = RelativeLayout(size_hint=(None, None))
        self.layout.size = (1024, 768)
        ui_widget = UIWidget()
        ui_widget.size_hint = (1, 1)
        self.layout.add_widget(ui_widget)
        self.add_widget(self.layout)

 class MyApp(App):
     def build(self):
         return SimplifiedGameWidget()

(完整代码:http://pastie.org/10791067

我期望获得:

  • GameWidget&gt; RelativeLayout&gt;所有大小均为窗口大小的UIWidget
  • 屏幕右上角是UIWidget子节点的AnchorLayout
  • AnchorLayout中的按钮位于右上角的默认大小。

我真正得到的是:

  • GameWidget&gt; RelativeLayout&gt;所有大小均为窗口大小的UIWidget
  • 屏幕左下角是UIWidget的子节点的AnchorLayout,格式为100x100px
  • AnchorLayout中的按钮,默认大小位于左下角100x100px

我做错了什么?

0 个答案:

没有答案