在Flex中管理一堆视图/屏幕有哪些好的模式?

时间:2009-12-12 00:40:17

标签: flex actionscript-3 actionscript flex3 viewstack

我正在使用大约十几种不同的屏幕构建Flex应用程序。屏幕之间存在关系,例如在屏幕1上,我点击了屏幕2输入的内容。然后我可能会调出屏幕3,然后返回2然后调出屏幕4.要清楚地显示屏幕。如果用户在应用程序中,我们希望实现一个面包屑概念,用户可以看到它们是哪个屏幕,并能够导航它们来自的路径。

因此,在考虑如何实现这一点时,在我看来,我应该有一堆视图。视图被压入堆栈,然后弹出。面包屑将是该堆栈的视觉描绘,例如:Home>>警报123>>客户B摘要>>客户B细节

话虽如此,我正试图想出一个如何实现这个的模式。明显的起点是mx:ViewStack作为容器。然后我将视图添加为子视图并使其可见 - 有效地“推”然后进入视图堆栈。然后关闭那个屏幕,我会把它们作为孩子移除,以“弹出”它们。这将不得不更新面包屑能够看到的某个堆栈数据结构。事实上,当用户点击面包屑中的项目跳转到时,面包屑本身可以修改堆栈。

在任何情况下,我都会努力做到这一点,但只是好奇是否有任何人可以分享你用来管理多个屏幕的任何模式/框架以及它们如何出现并离开并在它们之间导航我可以用来做一些想法。

似乎是一件简单的事情,但在实践中并不总是直截了当。

2 个答案:

答案 0 :(得分:2)

MVC我认为有助于代理并使用可重复使用的应用程序。

没有100%的设计模式,大部分时间都是你实现它的方式。

我发现很多视图时mvc很棒,因为它可以让你的mxml非常干净小巧,当你添加功能时,你可以在一个纯粹的类中使用它来保持代码免于复杂化。

答案 1 :(得分:1)

只是抛出一些想法,希望它可以帮助...... 也许你可以使用纪念图案?或者使用命令模式和CommandStack?