`
hacker47
  • 浏览: 339034 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

flex自定义组件用MXML?还是AS?

阅读更多

flex自定义组件用MXML?还是AS?

先说说为什么要在FLEX  Application中Custom component,据我个人总结有以下三点好处:


一是可以扩展一些你想要的功能;
二是可以提高Application的重用性;
三是可以让Application更加模块化.

 

其中,我觉得这三点都是非常重要的,但我觉得最重要的还是第三点,因为一个Flex Application通常只有一个主页面(就是一个包含<mx:Application> tag的页面),如果我们是一个team那么同时对一个文件操作就太不方便了,而且这个页面的Size和complex程序也会可想而知,所以Adobe建议通过Custome Component来将一个Application划分成多个Module从而达到方便分工,和更好维护以及Debug.在自定义组件方面,ADOBE为我们提供了非常人性化考虑,熟悉一点儿FlexBuilder的朋友都知道.这里就不多说FB了.

 

ADOBE为我们提供了两种主要的方式来Custom component,一种是MXML方式一种是AS硬编码,两种方式Custom component都非常简洁,但是在具体的项目中,争对不同的需求和问题,还是的好好权衡一下使用哪一种方式更快,成本更低.看了下ADOBE官方的文档,有如下七点可以供大家参考.

 


一:无论你用MXML还是AS方式,其实都是用AS,因为MXML最后也编译成了AS;所以我觉得这里效率上AS是不是要优于MXML呢?希望有高人指点小弟.


二:在AS能做的事情,MXML基本上也能做到,但是如果你自定义的组件很简单,用MXML来得更快.


三:当你自定义的组件是一个复合式组件时(也就是说,自定义组件中包含自定义组件),MXML能很方便地通过布局面板确定各组件的层次和位置.AS只能人工去找了.


四:当你要修改组件的行为时,只能用AS;


五:当你要创建一个直接继承UIComponent的子类时,只能用AS;


六:当你要创建非可视化组件时,比如Formatter,validator,Effect....时,只能用AS;


七:要为组件添加日志功能时,只能用AS.

 

看了已上七点,用MXML还是AS你心里有数了吧

6
2
分享到:
评论
4 楼 czwlucky 2009-07-11  
我认为布局性事务较多的话,用mxml开发比较方便和快捷,日后也好维护。
3 楼 momoko8443 2009-05-21  
六:当你要创建非可视化组件时,比如Formatter,validator,Effect....时,只能用AS;

用mxml同样可以,望更正
2 楼 javaest 2008-07-07  
quote]一:无论你用MXML还是AS方式,其实都是用AS,因为MXML最后也编译成了AS;所以我觉得这里效率上AS是不是要优于MXML呢?.[
对于客户两种方式的效率是一样的,因为无论你是用MXML还是AS,你在开发的时候,就已经打成SWF了.都是AS字节码了.MXML可以你开发的过程中编译的速度慢一些而已.
1 楼 bruce.peng 2008-05-13  
楼主貌视心里偏向AS。但开发中好像MXML的更多,毕竟一般多会涉及到布局。

相关推荐

    flex 自定义组件

    Flex自定义组件是Adobe Flex框架中的一个重要特性,它允许开发者创建具有特定功能和外观的UI元素,以满足项目中独特的用户界面需求。Flex是一个开源的、基于MXML和ActionScript的开发框架,主要用于构建富互联网应用...

    flex4自定义组件皮肤

    要深入学习和理解自定义组件皮肤,你需要打开这个目录,查看其中的MXML和AS文件,理解它们的结构和实现方式。 7. **实践与调试** - 实践是最好的老师,尝试修改压缩包中的皮肤文件,观察组件外观的变化,这有助于...

    as3 flex mxml调用.as文件例子

    在本文中,我们将深入探讨如何在ActionScript 3 (AS3) 和 Flex 框架中使用MXML来调用`.as`文件中的类。Flex是Adobe开发的一个开源框架,用于构建富互联网应用程序(RIA),它结合了MXML和AS3,提供了声明式和编程式...

    第五章 自定义组件开发 第一节 自定义Flex组件

    7. **使用组件**:最后,可以在MXML文件中像使用其他Flex组件一样使用自定义组件。 在实际开发中,我们还可能遇到一些高级话题,如组件的皮肤ning(Skinning)、状态管理(States)以及组件的性能优化。组件皮肤...

    flex/flash自定义组件(搜索栏)

    自定义组件可以通过在Flex项目的MXML文件中引用`&lt;mx:SWFLoader&gt;`或`&lt;s:SWFObject&gt;`标签来加载`searchField.swf`。此外,也可以将AS3代码引入项目,以便在运行时动态实例化组件。 5. **源码分析**: 对于`document...

    Flex自定义加载条(小起)

    - `.mxml`或`.as`文件:这是自定义加载条的源代码,展示了如何创建和定制加载条组件。 - `.css`文件:可能包含自定义的样式定义,用于改变加载条的外观。 - `.swf`或`.air`文件:编译后的应用程序,可以直接运行查看...

    ActionScript的自定义组件及自定义事件例子

    5. **使用组件**:在MXML或AS3代码中实例化并使用你的自定义组件。 接下来,我们讨论自定义事件。在ActionScript中,事件是程序间通信的一种方式,用于响应用户操作或其他组件的行为。自定义事件允许你创建特定于...

    FLEX自定义的日历组件,带有日志记录功能

    总的来说,FLEX自定义的日历组件带有日志记录功能,为开发者提供了一种强大且灵活的方式来处理日期选择,并能有效地监控应用的运行状态。通过深入理解这些组件和日志机制,开发者可以创建出更加用户友好且健壮的RIA...

    Flex自定义的温度计实现

    标题提到的"Flex自定义的温度计实现"是一个具体实例,展示了如何利用ActionScript(AS)在Flex环境中创建一个温度计图形用户界面(GUI)组件。Flex是Adobe开发的一个开源框架,主要用于构建富互联网应用程序(RIA)...

    About-MXML.zip_flex_mxml

    组件实例可以是预定义的Flex组件,如Button、Label等,也可以是自定义组件。属性用于设置组件的外观和行为,例如大小、颜色、文本等。事件监听器用于响应用户操作或程序事件。嵌套标签可以用来创建复杂的组件结构。 ...

    flex 自定义加载进度框

    2. **Flex SDK**:理解Flex SDK的结构和使用,包括如何使用mxml和as文件创建组件。 3. **事件监听**:监听加载进度事件,如`ProgressEvent.PROGRESS`和`Event.COMPLETE`,以便更新进度条的状态。 4. **Flex ...

    flex的mxml语言基础

    Flex项目使用两种主要的编程语言:MXML和ActionScript 3.0。MXML类似于HTML,用于构建项目的可视部分,它定义了组件、布局和其他界面元素。而ActionScript 3.0是一种全面面向对象的语言,与JavaScript有相似之处,但...

    flex自定义事件、简单例子说明

    ### Flex自定义事件详解 Flex 是一款用于构建和部署跨平台桌面应用与移动应用的开源框架,它基于Adobe Flash Platform。在Flex应用开发过程中,事件处理机制是非常重要的一个环节,而自定义事件则是这一机制中的...

    Flex4 自定义通用ImageButton

    在Flex4中,自定义组件是一项重要的技能,它允许开发者根据特定需求创建具有独特功能和外观的用户界面元素。本话题聚焦于自定义一个通用的`ImageButton`组件,该组件结合了图像和按钮的功能,提供了更丰富的交互体验...

    flex 超炫组件 coverflow 组件源码

    Coverflow组件的源码是用AS编写的,这意味着我们可以深入了解其内部工作原理,进行自定义修改,以满足特定项目需求。 2. **bin目录**:这个目录通常包含编译后的SWF文件,即最终运行的Flex应用程序或库。在cover...

    flex和as3之间互相调用的方法

    在Flex项目中,用户界面通常由MXML组件定义,而业务逻辑和数据处理则通过AS3代码实现。本文将深入探讨如何在Flex和AS3之间进行互相调用,以实现更高效的应用程序设计。 首先,我们了解Flex组件和AS3脚本的基本关系...

    Flex代码格式化 Flash格式化代码 mxml格式化代码 as格式化代码

    Flex代码格式化、Flash格式化代码、MXML和ActionScript(AS)代码的格式化是针对Adobe Flex开发环境中编写的相关代码进行美化和整理的过程。这一过程对于提高代码可读性、团队协作效率以及遵循编程规范至关重要。...

    通过自定义组件实现可拖动改变位置和大小的Label

    在`ResizableLabelTest.mxml`中,可能包含了这个自定义组件的实例化和使用,以及可能的布局或样式设置。而`mycomponents`目录可能包含了自定义组件的源代码文件,如`ResizableLabel.as`,这是实现拖动和调整大小功能...

    Flash多文件上传组件(Flex版)

    Flex SDK包含了MXML和ActionScript的编译器,以及一系列组件库,如Button、Label等,这些组件可以帮助开发者快速构建用户界面。Flash多文件上传组件就是基于Flex SDK开发的,它可以与后端服务器进行通信,处理文件...

    flex组件重写

    本文将探讨Flex组件重写的必要性、考虑因素、以及AS和MXML方式的选用规则,并提供AS方式重写组件的一般步骤。 一、为什么要重写组件 1. 扩展功能:当Flex已有的组件无法满足特定业务需求时,我们可以通过继承现有...

Global site tag (gtag.js) - Google Analytics