在Android上运行我的QML应用程序时收到此错误消息。不过,它在qmlscene
中工作正常。
代码如下所示:
main.qml:
ApplicationWindow {
property Component loaderPage: LoaderPage {
onGotoPage: changePage(page)
}
property Component loginPage: LoginPage {
onGotoPage: changePage(page)
}
function changePage(page) {
switch (page) {
case "login":
stackView.push({item: loginPage});
break;
default:
print("panic!")
}
}
StackView {
id: stackView
initialItem: loaderPage
}
}
Page.qml:
Item {
signal gotoPage (string page)
}
LoaderPage.qml:
Page {
id: loaderPage
// Triggered by some event:
function() {
loaderPage.gotoPage("login");
}
}
谁能解释为什么它抱怨递归调用?
我正在与QtQuick 2.3
和QtQuick.Controls 1.2
一起工作.
此错误仍然存在,QtQuick.Controls 2.2
更低,移动到 2.5 和更高应该可以解决它。