更改Loader源和更新视图

时间:2018-01-02 02:53:21

标签: qt qml

我有一个应用程序,我在其中使用Loader对象在主文件中加载一些资源:

main.qml:

ApplicationWindow {
    property string pageSource: pageLoader.source
    ...
    Loader {
        id: pageLoader
        source: "page1.qml"
    }
}

在page1.qml中,我有一个包含一些按钮和文本字段的布局。在pageLoader中加载此页面可以正常工作。如你所见,我有一个foo按钮,应该将Loader的源切换到page2.qml,但由于某种原因,它不起作用。

page1.qml:

Item {
    ColumnLayout {
        TexField {...}
        TexField {...}
        Button {
            id: foo
            onClicked: {
                pageSource = "page2.qml"
            }
        }
    }
}

通过检查一些控制台日志,我能够知道我实际上正在更改加载器的源,但是视图没有按预期更新,并且page1.qml中的所有控件都没有被page2.qml替换。第二页有ListView。切换Loader的活动属性也不起作用。任何人都可以发光吗?

0 个答案:

没有答案