1

在 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
    }
}

页面.qml

Item {
    signal gotoPage (string page)
}

LoaderPage.qml

Page {
    id: loaderPage

    // Triggered by some event:
    function() {
        loaderPage.gotoPage("login");
    }
}

谁能解释为什么它抱怨递归调用?

我正在使用QtQuick 2.3QtQuick.Controls 1.2

4

1 回答 1

0

这个错误在更低版本中仍然存在QtQuick.Controls 2.2,移动到 2.5 和更高版本应该可以解决它。

于 2019-04-17T10:15:44.990 回答