flex actionscript-3 blackberry-playbook

Alternar entre Viewenvigators con pestañas Flex



actionscript-3 blackberry-playbook (2)

Esta clase es extrañamente indocumentada. No lo he intentado yo mismo, pero al buscar en línea, esto es lo que encontré que corrobora con lo que hace el resto de la red.

Lo que debe hacer es TabbedViewNavigatorApplication un evento de burbujas en TabbedViewNavigatorApplication y desde allí cambiar la propiedad selectedIndex a la pestaña a la que necesite cambiar. Por ejemplo:

<s:TabbedViewNavigatorApplication xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" creationComplete="onCreationComplete()"> <fx:Script> <![CDATA[ private function onCreationComplete():void { this.addEventListener(''someEvent'', someHandler); } private function someHandler(e:Event):void { this.selectedIndex = 0; // or whatever index you want. } ]]> </fx:Script> <s:ViewNavigator label="Tab1" width="100%" height="100%" firstView="views.TabOneView"/> <s:ViewNavigator label="Tab2" width="100%" height="100%" firstView="views.TabTwoView"/> <s:ViewNavigator label="Tab3" width="100%" height="100%" firstView="views.TabThreeView"/> </s:TabbedViewNavigatorApplication>

Solo necesita despachar un evento burbujeante desde dentro de sus hijos. Podría crear un evento personalizado que contenga datos sobre a qué pestaña cambiar.

Estoy trabajando en una aplicación Flex TabbedViewNavigatorApplication con tres pestañas (elementos ViewNavigator). Me gustaría cambiar de un ViewNavigator a otro basado en una acción del usuario (a través del código ActionScript).

Sé que el cambio entre vistas utiliza pushView y popView , pero estoy trabajando con ViewNavigators, y mi búsqueda no reveló nada útil.

Estoy tratando de cambiar de Tab2 a Tab1 cuando ocurre un evento. En este caso, Tab2 contiene una lista, y cuando el usuario hace una selección, quiero volver a Tab1.

<s:TabbedViewNavigatorApplication xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" creationComplete="onAppReady(event)"> <s:ViewNavigator label="Tab1" width="100%" height="100%" firstView="views.TabOneView"/> <s:ViewNavigator label="Tab2" width="100%" height="100%" firstView="views.TabTwoView"/> <s:ViewNavigator label="Tab3" width="100%" height="100%" firstView="views.TabThreeView"/> </s:TabbedViewNavigatorApplication>

¡Gracias por tu ayuda!


Utilizo la siguiente línea de ActionScript para cambiar de un ViewNavigator a otro basado en una acción del usuario:

TabbedViewNavigator(navigator.parentNavigator).selectedIndex = 1;

Funcionó como un amuleto y parece más simple que los eventos burbujeantes.