2011-01-26 144 views
1

我在我的Flex应用程序中导航到不同的MXML页面时遇到困难。我检查了一些关于它的其他问题,但它们似乎与标签导航有关。 我想通过Actionscript代码从一个MXML页面导航到另一个。这怎么可能?Flex导航到另一个Mxml页面?

干杯

编辑:

我在Flex中一个真正的初学者和我合作了,我确实需要使用美国,并且现在已经发现如何使用它们。谢谢你的帮助。

回答

6

您不浏览之间的 MXML页面。 MXML不是以页面开始的。相反,它们是组件,显示在应用程序中。因此,如果您想更改当前显示,那么您需要删除已添加的组件,并添加其他应该显示的组件。

有不同的方法来做到这一点。很少使用手动删除元素的原始方式,而是有两种主要方法:ViewStacks和显示状态。当视图中没有多少不同的更改时,应使用显示状态,例如,当您单击将新选项添加​​到现有表单的复选框时。如果你想改变整个显示的内容(这不一定是整个应用程序的内容,而是在组件中思考),你可以使用ViewStacks。

ViewStacks就像一叠纸,每张纸反映一个视图。因此,如果您想显示其他内容,请将新视图移到顶端,将其他视图隐藏在下方。包括TabNavigators在内的许多组件都只是ViewStacks,并带有一个附加菜单来选择应该显示的视图。但你也可以使用ViewStack并手动改变你想要显示的内容。

+0

是否有可能隐藏一个MXML页面,并显示另一个呢?我查看了ViewStacks,但它仍然不是我正在寻找的。我期望能够在另一个mxml页面上将页面的全部内容更改为不同的外观。是否可以“显示”不同的mxml页面,并隐藏前一页上的所有内容以显示它? – 2011-01-26 13:44:55

+1

是的,但你需要摆脱这种分页思路;)你可以这样做:主要的MXML只有一个大的ViewStack来填充整个文档。然后你添加一个组件(第一页)到堆栈;如果你想切换显示器,可以添加另一个组件(其他页面)并更改堆栈的当前索引以显示新的组件。再次说明:MXML是组件,而不是页面。 – poke 2011-01-26 13:48:33

1

Flex不像HTML一样。

你必须实例化或删除类,组件或所有这些东西。 我会使用这些状态。

您可以注册处理程序到按钮并交换状态。 然后您可以通过tsates安装或移除组件。

你使用哪个弹性版本?各州的管理正在改变flex3和flex4之间

假设,你有一个应用程序与两个内容区域,家庭和画廊。首先,您必须使用project-> new->组件创建这两个区域,并将其命名为related。

之后,你在你的应用程序中实例化两个组件。

定义两个状态,家庭和画廊,并用一个或两个按钮交换这些状态。 设置属性excludefrom或包含状态的名称。最后,您拥有一个包含两个内容区域的应用程序,但您永远不会交换页面,您可以在运行时实例化或删除组件。

BR 弗兰克

BR 弗兰克

相关问题