将QML StackView重置为初始状态

时间:2016-03-27 21:15:06

标签: qt qml

我有一个QML StackView,在应用程序中有很多组件被推送到它。我想要做的是在申请期间的某个时刻将StackView重置为初始状态。 StackView定义为:

StackView {
    id: soemID
    initialItem: myItem
}

随着应用程序的继续推进和弹出。我找了一些方便的方法来重置它只保留初始项目但找不到它。这样做的唯一方法是连续弹出物品直到只剩下一个物品?

2 个答案:

答案 0 :(得分:5)

soemID.pop(null) 

应该做的伎俩。 从StackView文档:

  

项目弹出(项目项目=未定义)

     

如果item为null,则所有项目都归结为(但不包括)第一个项目   将被弹出。如果未指定,则仅当前项目   弹出....

答案 1 :(得分:2)

根据评论的建议,清除堆栈然后按下初始项目就可以了。

soemID.clear()
soemID.push(soemID.initialItem)