使用按钮加载kv文件

时间:2017-09-02 16:14:59

标签: kivy

大家好我的问题是基本问题。我正在使用kv文件,因为坦率地说,阅读300行代码比500行更容易。我的问题是在我的kv中我有一个改变屏幕的按钮,我想知道我是否有办法使用builder.load(kv2.kv)我已经尝试了一些不同的方法来编写它,stats.kv文件加载我的所有RPG统计信息,如果我删除构建器语句我只是得到下一个屏幕,我的所有小部件都是在另一个kv文件中,以便于调试。我只需要在kv文件中加载多个kv文件。我每次尝试都会收到此错误:

AttributeError:'RevengeApp'对象没有属性'builder'

这是.kv格式的按钮:

按钮:                 文字:“确认”                 on_press:app.builder.load(stats.kv)                 on_release:app.root.current =“AStats”

1 个答案:

答案 0 :(得分:1)

您是否已将Builder对象分配给应用的builder属性?因为那是你的kv代码所期望的。

from kivy.lang import Builder

[...]

class RevengeApp(App):
    def build(self):
        self.builder = Builder

应该这样做。

但您也可以通过

直接在您的kv代码中导入Builder
#:import builder kivy.lang.Builder

位于kv文件的顶部,然后将app.builder.load替换为builder.load_file绑定中的on_press