几次推送后,QML StackView会破坏字符串

时间:2015-06-16 12:03:21

标签: string qt qml corruption stackview

我正在为体育博彩制作创建一个QML应用程序。

我有一个显示各种竞争和市场的StackView。

之前,我使用了一个视图来例如在足球中显示各种比赛,然后根据我得到的数据,我只是在这个视图中改变了模型。

我使用StackView将各种视图推送给用户。

我现在想要将这些视图动态分配到堆栈中:

StackView {
    id: stack

    delegate: StackViewDelegate {
        function transitionFinished(properties) {
            properties.exitItem.opacity = 1
            properties.exitItem.visible = false
        }

        pushTransition: StackViewTransition {
            PropertyAnimation {
                target: enterItem
                property: "opacity"
                from: 0
                to: 1
            }
            PropertyAnimation {
                target: exitItem
                property: "opacity"
                from: 1
                to: 0
            }
        }
    }
}

尚未分配的组件:

Component {
    id: groupComponent

    GroupView {
        onCompetitionClicked: {
            root.showCompetition(competitionId);
        }
    }
}

Component {
    id: competitionComponent

    CompetitionView {
            // Blabla
    }
}

单击此组件时,showCompetition会将新视图推送到堆栈:

    function showCompetition(competitionId) {

            var view = competitionComponent.createObject();
            view.loadCompetition(competitionId);

            stack.push( {item:view, destroyOnPop:true});
    }

所以现在发生这种情况(截图)

在我将其更改为动态分配之前(注意我已经硬编码了调试标题): enter image description here

我改为动态分配后(注意字体看起来更厚?): enter image description here

点击一个大的后: enter image description here

回到第一页(注意即使是硬编码的字符串也会被混淆): enter image description here

显然字符串出现问题,因为数字数据似乎相同,而且我收到的数据仍然正确,因为顶部的面包屑仍显示正确的字符串。

发生了什么事?

0 个答案:

没有答案