开发者

Flex navigate to another Mxml page?

I am having difficulty navigating to different MXML pages in my Flex application. I checked some other questions on SO about it but they seemed to be to do with tab navigation. I am trying to navigate from one MXML page to another via Actionscript code. How is this possible?

Cheers

Edit:

I am a real beginner in Flex and I worked out that I actually needed to use 开发者_StackOverflow中文版States, and have now discovered how to use them. Thanks for your help.


You don't navigate between MXML pages. MXMLs are not pages to begin with. Instead they are components, that are displayed in the application. So if you want to change the current display, then you need to remove the already added components, and add others that should be displayed now.

There are different approaches to do this. The very raw way of manually removing elements is rarely used, instead there are two main methods: ViewStacks and display states. Display states should be used when there are not many different changes in a view, for example when you click a checkbox that adds new options to an existing formular. If you want to change the whole displayed content (this does not have to be the whole application content though, think in components instead), you can use ViewStacks.

ViewStacks are like a stack of paper, where each paper reflects a single view. So if you want to display something else, you move the new view to the top, hiding all others below. Many components, including TabNavigators, are just ViewStacks with an additional menu to select the view that should be displayed. But you can also just use a ViewStack and manually change to what you want to show.


Flex is not sidebased like html.

You have to instantiate or remove classes, components or all this stuff. i would use the states.

You can register handler to buttons and swap the state. Then you are able to instatiate or remove components via the tsates.

Which flex version dou you use? The management of the states are changing between flex3 and flex4

Assume, you have one app with two content areas, home and gallery. First you have to create these two areas with project->new->component and named there related.

After that, you instanciate both components in your app.

Define two states, home and gallery and swap these with a button or two. set the propert excludefrom or include with the name of the states. finally, you have an app with two content areas, but you never swap pages, you instanciate or remove components in runtime.

br Frank

BR Frank

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜