`

Flex State的用法

    博客分类:
  • flex
阅读更多

1.State用来控制页面间的切换:
<s:states>
 <s:State name="add" />
 <s:State name="list" />
</s:states>


它使用view.currentState="add" 或者
view.currentSate="list"来切换页面。

 

add表示新建页面,list表示列表页面。

<s:HGroup width="100%" height="30" verticalAlign="middle" paddingLeft="5" excludeFrom="add,view">
excludeFromas表示不包含在add或者view页面。
<s:VGroup width="100%" height="100%" includeIn="add" horizontalAlign="center" >
inCludeIn表示包含在add页面。


<s:Panel width="100%" height="100%" title.add="新建角色" title.view="查看角色"  >


IPM-481
<s:HGroup  verticalAlign="middle" paddingLeft="5" width="100%" height.add="45%" height.view="0" >


2.如何在一个组件中调用另一个组件

方法一:
<?xml version="1.0" encoding="utf-8"?>
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
   xmlns:s="library://ns.adobe.com/flex/spark" creationComplete="init()"
   xmlns:mx="library://ns.adobe.com/flex/mx" width="100%" height="100%" 
  
   xmlns:component="com.view.component.*"
   remove="destroy()">
 

//组件调用:RoleConfigView是com.view.component.RoleConfigView.mxml  定义id来操作它里面的组件
 <component:RoleConfigView width="100%" height="100%" includeIn="view" id="roleView"/>
</s:Group>

private function init():void{
 //初始化所有的组件
 this.currentState='add';
 this.currentState='view';
 this.currentState='list'; //最后初始化list,这个state.显示状态的页面
}


方法二:
页面:
facade.sendNotification(RoleNotification.INITADD_PANEL, this);

Mediator:
 override public function handleNotification(notification:INotification):void
  {
   switch (notification.getName())
   {
    case MonitoringModelNotification.INIT_ADD_PANEL:
     this.initAddPanel();
     break;

   }
  }

private function initAddPanel():void{
var panel:RoleConfigView = this.getViewComponent() as RoleConfigView;

}

 

13.basedOn 继承另一个状态的组件
<s:states>
 <s:State name="old"/>
 <s:State name="newOld" basedOn="old"/>
</s:states>

<mx:State name="login" enterState="loginEnter(event)" exitState="loginExit(event)">
进入login状态,执行loginEnter(event),退出login状态,执行loginExit(event)

private function loginEnter(event:FlexEvent):void{
 this.addChild(new Main());  //增加子模块
}
private function loginExit(event:FlexEvent):void{
 this.removeAllChildren(); //移除所有的组件
}

分享到:
评论

相关推荐

    flex的state组件和trasition组件例子

    在Flex开发中,State组件和Transition组件是构建用户界面动态行为的重要工具。它们允许开发者创建丰富的、交互性强的用户界面,使应用更具吸引力和用户体验。本文将深入探讨这两个组件的概念、用法以及如何在实际...

    FLEX4的皮肤skin

    然后,有三种方法将此自定义皮肤应用到Button组件上: (1) 使用CSS设置皮肤类:`Button { skinClass: ClassReference("com.rianote.flex.skin.KButton"); }` (2) 直接在MXML中指定皮肤类:`...

    编译原理flex工具包

    3. 规则优先级:解释如何处理模式冲突,以及使用`&lt;&lt;EOF&gt;&gt;`、`&lt;state&gt;`等控制流结构。 4. 输出文件:理解Flex生成的C代码结构,以及如何自定义输出函数和数据结构。 5. 实战应用:通过实例项目,如简单的计算器或编程...

    flex 4 生命周期

    Flex 4的生命周期改进也体现在事件处理和元数据的使用上,例如` IOErrorEvent`和`StatusEvent`等事件,以及`[Bindable]`、`[SkinPart]`等元数据,这些都增强了组件与外部数据的交互和皮肤的自定义。 尽管Adobe提供...

    Flex Service

    例如,使用WebService类,开发者可以定义服务端的WSDL(Web服务描述语言)URL,然后调用其方法获取数据。Flex自动处理XML到ActionScript对象的转换,简化了数据的处理流程。 2. Flex与RESTful服务的整合: REST是...

    FLex 物品分类游戏

    5. **状态管理**:游戏可能有多个阶段或状态,Flex的State机制可以方便地切换UI布局和行为,适应不同游戏阶段的需求。 6. **XML数据存储**:游戏物品信息可能以XML格式存储,利用Flex的XML类进行读取和解析,便于...

    Flex4 Spark皮肤

    通过上述介绍,我们可以了解到在Flex4中自定义控件样式的方法。`SparkSkin` 和 `Skin` 类提供了强大的工具来定制界面的外观。无论是通过MXML还是ActionScript,甚至是CSS样式表,都可以轻松地应用这些自定义皮肤到...

    android获取网络状态Flex开发

    本文将深入探讨如何在Android平台上使用Flex进行网络状态检测,包括2G、2.5G以及WiFi网络的监测。 ### 知识点一:Flex与Android的结合 Flex是Adobe公司推出的一种用于构建高性能且具有丰富交互性的Web应用程序的...

    Flex Arcgis rest编程使用

    【Flex ArcGIS REST编程使用】涉及的技术领域主要是WebGIS开发,使用Adobe Flex作为前端富互联网应用(RIA)框架,结合RESTful服务接口与ESRI公司的ArcGIS Server进行交互。Flex是一种基于ActionScript 3.0的开发...

    Flex4的皮肤文档及demo

    将自定义的皮肤应用到组件有多种方法: 1. 使用CSS样式表,设置`skinClass`属性,例如: ```css Button { skinClass: ClassReference("com.rianote.flex.skin.KButton"); } ``` 2. 直接在MXML组件标签中指定`...

    关于flex中query查询

    在上述示例中,使用了`InfoSymbol`组件来显示查询结果的详细信息。具体实现如下: ```as3 &lt;mx:Label text="{data.STATE_NAME}"/&gt; ``` 在这个示例中,`InfoSymbol`组件被用来显示查询结果中的城市...

    flex+java增删改查(spring+jpa)简单例子

    标题 "flex+java增删改查(spring+jpa)简单例子" 暗示了这是一个关于使用Adobe Flex作为前端UI框架,与Java后端结合,实现数据的CRUD(创建、读取、更新、删除)操作的教程。在这个场景中,Java后端使用Spring框架...

    使用Flex调用webService开发一个天气预报服务

    在本文中,我们将深入探讨如何使用Adobe Flex调用Web Service来开发一个天气预报服务。Flex是一种基于MXML和ActionScript的开源框架,用于构建富互联网应用程序(RIA)。它允许开发者创建交互性强、用户体验良好的...

    我的flex资料1

    3. **Flex组件**:Flex提供了一系列预定义的UI组件,如按钮、文本输入框、列表等,了解这些组件的使用方法和自定义方式是构建用户界面的基础。 4. **事件处理**:理解事件模型,知道如何注册事件监听器和响应事件,...

    flex 应用webservice 做的中英双向翻译

    Web服务,通常以SOAP(Simple Object Access Protocol)或REST(Representational State Transfer)的形式存在,是一种在不同系统间交换数据的方法。在这个Flex应用中,Web服务可能是一个专门设计的API,可以接收...

    Flex4皮肤资料

    根据提供的信息,本文将深入解析Flex4中皮肤(skin)的概念、SparkSkin的使用方法以及如何通过自定义Skin来改变Flex应用界面的外观。 ### Flex4中的皮肤概念 在Flex4中,皮肤(skin)是一种用于控制UI组件外观的...

    Flex和.NET通信

    这种通信模式通常利用Web服务技术,如SOAP(Simple Object Access Protocol)或REST(Representational State Transfer),为Flex应用程序提供与.NET服务器之间的数据交互。 在Flex中,我们可以使用AS3...

Global site tag (gtag.js) - Google Analytics