qml stackview:重新加载堆栈顶部

时间:2018-07-18 00:28:02

标签: qml stackview

是否有一种方法可以在执行弹出操作后重新加载堆栈顶部的项目。 它是否总是从内存加载,还是可以强制页面再次初始化。

1 个答案:

答案 0 :(得分:0)

较低的页面保持活动状态,而新页面仅位于其上方。因此,如果页面的所有属性均已正确绑定且所有信号均已正确放置,则无需重新加载。
通常不打算重新加载它,因为您将丢失任何内部状态,例如用户输入等。等如果您不总是将信息存储在页面之外。

如果您只想暂停绑定并稍后重新启用它们,请引入

 property bool isActive

并使用条件绑定

 property int myProperty: isActive ? someOtherProperty * 5 : 0

 Binding {
     ...
     when: isActive
 }

如果您确实要重新加载整个页面,则可以使用Loader完成。与其直接将页面推入堆栈,不如推Loader来加载页面。然后,您只需更改其active属性即可重新加载页面。