Xamarin表单导航堆栈内存

时间:2017-03-18 12:04:17

标签: c# garbage-collection xamarin.forms

是否收集了Xamarin Forms导航堆栈垃圾?当我单击按钮并使用Navigation.PushAsync()打开页面时,它会将其他页面保留在导航堆栈中还是重新存储内存?

1 个答案:

答案 0 :(得分:1)

导航堆栈是一个Stack接口,您通常可以将其视为抽屉中的一堆银器。当您将抽屉添加到抽屉时,将其放在其他叉子的顶部,当您移除叉子时,始终移除顶部的叉子。堆栈是先进先出数据类型。但是当你在顶部添加一个叉子时,所有其他叉子仍然在它下面。

这与导航堆栈相同。使用PushAsync(newPage)添加页面时,newPage位于导航堆栈的顶部,但之前的所有页面仍位于其下方。这样,当您致电PopAsync()时,您将返回上一页,而不必完全重新制作它。