存档

文章标签 ‘flex4’

Flash Builder 4.01

2010年7月7日 评论已被关闭

直接从Flash Builder 4.0升级的话,下载这个更新包就可以了:http://download.macromedia.com/pub/flex/updaters/4_0_1/win/flashbuilder401-patch-win-277662.zip吐舌鬼脸

分类: 生活杂谈 标签: ,

Flex 4 提供的 Spark 组件

2010年4月1日 评论已被关闭
Spark 容器

所有 Spark 容器都支持可指定布局。

  • Group-Flex 4 中的一个不可设计外观的容器类,它可以包含 UIComponents 等可视子代、Adobe Flash Professional 中创建的 Flex 组件或图形元素。
  • DataGroup-Flex 4 中的一个不可设计外观的容器类,它只能包含子代等非可视数据项。DataGroup 容器支持生成项呈示器(这是一种可视元素,它将数据项转换为可显示项)及其元素的虚拟化。
  • SkinnableContainer-Group 的可设计外观的版本。
  • SkinnableDataContainer-DataGroup 的可设计外观的版本。
  • Application-针对基于浏览器的 Flex 应用程序、可设计外观的顶级容器(与 AIR 应用程序相反,后者使用下述 Spark WindowedApplication 容器)。
  • BorderContainer-支持边框和背景填充的 CSS 样式的一个可设计外观的容器(与 MX 容器支持的边框和背景样式类似)。
  • Panel-支持标题栏、题注和边框的一个可设计外观的容器。
  • TitleWindow-与 Panel 类似、支持关闭按钮和可移动区域的一个可设计外观的容器。TitleWindow 将通过 PopUpManager 以弹出窗口形式弹出。
  • Window-可用作 Adobe AIR 应用程序中的顶级应用程序窗口的一个可设计外观的组件。
  • WindowedApplication-定义 Adobe AIR 应用程序中的应用程序容器的一个可设计外观的组件。
按钮组件
  • Button-可设计外观的矩形按钮。
  • Button-可设计外观的矩形按钮。
  • CheckBox-包含标签和支持复选标记的框、可设计外观的组件。
  • RadioButton-用于跨一组相互排斥的单选按钮识别一个选择、可设计外观的组件。
范围组件
  • ScrollBar-用于控制给定内容区域中的数据显示量、可设计外观的组件。
  • Slider-允许通过在一个滑块轨迹的两个端点之间拖动缩略图选择值、可设计外观的组件。
  • Spinner-包含用于从一个有序集中选择值的向上和向下按钮、可设计外观的组件。
  • NumericStepper-可设计外观的组件,它实质上是一个连接到 Spark TextInput 控件的 Spark Spinner 控件,允许选择和编辑数值。
文本组件
  • Label-显示单行统一格式文本、不可设计外观的控件。
  • RichText-可显示多行富格式文本并支持嵌入图像、不可设计外观的控件。
  • RichEditableText-可用于显示、滚动、编辑和选择多行富格式文本、不可设计外观的控件。
  • TextArea-允许显示和编辑多行富格式文本、可设计外观的控件。
  • TextInput-允许显示和编辑单行统一格式文本、可设计外观的控件。
基于列表的组件
  • List-显示数据项、可设计外观的组件。它支持生成项呈示器、单项和多项选择、拖放操作、虚拟化和可指定布局。
  • DropDownList-允许用户从拖放打开的列表中选择值、可设计外观的组件。
  • ComboBox-可设计外观的组件,实质上是一个带有可编辑功能的 Spark DropDownList。
导航器组件
  • ButtonBar-支持从类似于导航器的一组按钮中选择一个按钮、可设计外观的组件。
  • TabBar-支持从类似于导航器的一组选项卡中选择一个选项卡、可设计外观的组件。
Spark 滚动组件
  • Scroller-定义可滚动视图、可设计外观的组件,可支持垂直和水平滚动栏。
Spark 媒体组件
  • VideoPlayer-支持回放视频媒体、可设计外观的组件,它构建在开放源媒体框架*之上。

原文:http://www.adobe.com/cn/devnet/flex/articles/flex4_sparkintro_05.html

分类: Flex 标签:

以下是 Flex 4 中提供的文本组件之间的区别

2010年4月1日 评论已被关闭

image

分类: 生活杂谈 标签:

新增组件和容器

2010年4月1日 评论已被关闭

要将 MX 导航器(ViewStack、Accordion、TabNavigator)用于 Spark 组件,导航器的子代应当是一个 NavigatorContent 组件。否则,您无法在 MX 导航器中使用 Spark 基元。此处是一个示例:

<mx:ViewStack id="vs" selectedIndex="{tb.selectedIndex}">
	<s:NavigatorContent label="bar">
	   <s:layout>
	     <s:VerticalLayout />
	   </s:layout>
	   <s:Label text="bar" />
	   <s:TextInput />
	</s:NavigatorContent>
</mx:ViewStack>
状态语法中的变化

Flex 4 将状态功能升级为一个全面的 MXML 语言功能。因此,您可能会发现状态更灵活、更直接。新的状态语法内联程度更高,允许在上下文中指定状态特定变化。以下是 Flex 4 语法中的主要区别:

  • 只有状态是在状态阵列中定义的。
  • 在新的状态语法中,不能使用 AddChildRemoveChild。您必须使用 includeInexcludeFrom 属性在组件上定义组件在特定状态中的角色。

在以下 Flex 3 示例中,仅当文档的 currentStatesubmitState 时,才使用状态包含一个 Button 并删除一个 TextInput。对于较复杂的状态,这种方法可以做到十分详细。

<mx:states>
    <mx:State name="submitState" basedOn="">
        <mx:AddChild relativeTo="{loginForm}" >
           <mx:Button label="submit" bottom="10" right="10"/>
        </mx:AddChild>
        <mx:RemoveChild target="{firstTextInput}"/>
    </mx:State>
</mx:states>

<mx:TextInput id="firstTextInput" />
<mx:Canvas id="loginForm" />

以下是一段使用 includeInexcludeFrom、更简单的 Flex 4 代码。

<s:states>
    <s:State name="submitState" />
</s:states>
<s:TextInput id="firstTextInput" excludeFrom="submitState" />
<s:Group id="loginForm" >
    <s:Button label="submit" bottom="10" right="10" includeIn="submitState"/>
</s:Group>
  • SetPropertySetStyleSetEventHandler 已替换为新的语法,它允许您限定具备特定状态标识符的 MXML 属性值。

在以下 Flex 3 示例中,代码为 submitState 中的一个 Button 定义了属性、样式和事件。

<mx:states>
    <mx:State name="submitState" basedOn="">
        <mx:SetProperty target="{submitButton}" name="label" value="submit" />
        <mx:SetStyle target="{submitButton}" name="textDecoration" value="underline"/>
        <mx:SetEventHandler target="{submitButton}" name="click" handler="trace('done');"/>
    </mx:State>
    <mx:State name="clearState" basedOn="">
        <mx:SetProperty target="{submitButton}" name="label" value="clear" />
        <mx:SetEventHandler target="{submitButton}" name="click" handler="emptyDocument()" />
    </mx:State>
</mx:states>

<mx:Button id="submitButton" />

在 Flex 4 中,代码如下:

<s:states>
    <s:State name="submitState" />
    <s:State name="clearState" />
</s:states>

<s:Button label.submitState="submit" textDecoration.submitState="underline"
   click.submitState="trace('done')" click.clearState="emptyDocument()"
   label.clearState="clear" textDecoration.clearState="none"/>
  • 组件不能再处于未定义状态或空状态。默认情况下,声明的第一个状态是组件的初始状态。

    当文档使用 MXML 2009 语言命名空间时,可以使用新语法。可以混合使用旧版语法和新版状态语法。只有 MXML 2006 命名空间中可以使用旧版语法。

此外,各个组件现在支持外观类中定义的一组状态,这使得根据组件状态应用可视变化更加简单。例如,如果查看 Spark Button 的外观,您会发现已定义以下状态:

<s:states>
    <s:State name="up" />
    <s:State name="over" />
    <s:State name="down" />
    <s:State name="disabled" />
</s:states> 

ButtonSkin 类定义了各个状态中 Spark Button 在可视方面的变化

分类: Flex 标签:

(转)Flex 4 的新增功能

2010年4月1日 评论已被关闭

 

Spark 和 FXG

“用心设计”主题最大的特点是新的外观和组件架构,它称为 Spark。Spark 以现有的 MX 架构为构建基础,它为开发人员和设计人员提供一个表达性更高的机制,帮助他们共同处理 Flex 应用程序的外观。Spark 目前包含约 30 个新组件和基元,形成了 Adobe 下一代组件的基础并准备与 Adobe Flash Catalyst 轻松集成。该发行版包含为新架构规划的几乎所有组件。Spark 不会提供 MX 中的各个组件版本。由于 Spark 的构建基础与 MX 组件相同,所有现有 MX 组件可以与新架构轻松实现互操作。有关架构的更多信息,请阅读 Deepa 的文章 Spark 架构和组件集简要概述*

人们感兴趣的另一点是对 Flash Platform 新交换格式 FXG 的支持。除了支持在 Flex 应用程序中直接使用 FXG,Flex 框架还包含与 FXG 中的标签对齐的图形基元。这些图形基元可以在您的 Flex 应用程序中直接使用,并且支持与更传统的 Flex 组件相关的所有运行时可编辑性。为了支持高性能图形,Adobe 还允许编译器将静态 FXG 直接优化为 Flash Player 可直接识别的 SWF 标签。这样,您就可以使用自己喜欢的编辑器灵活编辑图形标签,同时获得重要的高性能。进一步了解 FXG*

Spark 架构还包含一个更新的、更灵活的布局模型。新的、运行时可指定的布局包含对 2D 旋转和刻度的全面支持,还可以在布局后将 Flash Player 10 新的 3D 功能应用于任何组件。这一新的布局机制不仅仅可以在 List 类中,也可以在普通容器模型中支持虚拟化(再见,喜怒无常的重复器!)。它还为任何容器或列表提供顺畅的滚动支持。进一步了解 Spark 容器*布局*

最后,Spark 引入了一个经过改进的新动画引擎,将它作为更佳效果和过渡的基础。Flex 4 支持过渡自动反向、将 Pixel Bender 过滤器应用为效果、在所有三个平面中变形和基于复杂关键帧的动画。您可以查看样本应用程序中的具体效果,阅读文档*和 Chet Haase 的文章(第 1 部分*第 2 部分*)进一步了解 Spark 效果。

使用状态

我们知道 Flex 需要做出改进的一个方面是状态。我们相信状态概念很容易理解,但在 Flex 3 中进行实施并非那么简单。因此,Adobe 在 Flex 4 中做出了一些新的 MXML 语言改进,使它可以更轻松地与状态配合。

为了支持新模型,我们将 MXML 语言升级为 MXML 2009,同时对 MXML 略作改进,使它能支持更好的工具,同时保持支持使用简单的文本编辑器进行编辑的承诺。进一步了解 MXML 2009*新的状态语法*

开发人员工作效率

在开发人员工作效率主题中,我们侧重于编译器性能。我们对常见用例实施了许多优化,并且效果取得了实质性的提高。我们还对 ASDoc 工具做出了许多改进,包括对 MXML 文档中的 ASDoc 的支持,这是一项普通功能请求。绑定经过升级,现在支持双向通信;只要在绑定表达式前面放一个 @,对绑定目标的更新即可复制回源。呼声最高的一项请求,同时也是一个令人兴奋的功能,即支持更多 CSS 选择器,其中包括基于子代和 ID 的选择器。请务必阅读相关文档,进一步了解这些改进。

最后,我们知道需要继续发展 Flex 框架,甚至超越 Spark 架构。为此,我们为 Flex 4 改进了 Flex 应用程序中的视频使用。Spark 包含一个无主色的 Video 组件 VideoDisplay 和一个无外观的 VideoElement 包装器 VideoPlayer。这两个类都以开放源媒体框架的视频类为构建基础。开发人员现在可以轻松地将视频放入应用程序中,然后自定义外观。进一步了解 OSMF*

Flash Player 10 的强大功能之一是新的文本引擎以及与之相关的文本布局框架。我们会将文本引擎与文本布局框架直接并入 Flex 框架中,为 Spark 创建出新的文本控件,同时为 MX 控件提供基本曝光。新的文本控件支持双向文本,虽然它并未包含在本发行版中,我们很快将为 Flex 添加镜像支持,在下一个次要发行版中为 Flex 应用程序实现所有区域设置。您还会发现我们已经将 HTML 模板从基于之前的 Adobe Flash Player Detection Kit 转为开放源 SWFObject 项目,这是另一个呼声较高的请求

 

原文:http://www.adobe.com/cn/devnet/flex/articles/flex4sdk_whatsnew.html

分类: Flex 标签:

Adobe Flash Builder 4 下载

2010年3月22日 评论已被关闭
分类: 生活杂谈 标签:

Adobe ADC Flex和Coldfusion开发中心中文文章更新

2009年9月13日 评论已被关闭
分类: Flex 标签: ,

3D Layouts for Flex 4

2009年8月24日 评论已被关闭

from:http://www.bobjim.com/2009/06/16/heres-5-3d-layouts-for-flex-4/

I spent some time converting the OpenFlux 3D layouts to Flex 4 last week and have attached the example with source code. This includes CoverFlow (horizontal and vertical), Carousel, Spiral and Time Machine. I also included one which was created when I screwed up the CoverFlow layout but I thought it looked cool so I hit Save As and named it AwesomeLayout.

Overall I was really happy with how quickly I could get these working with Flex 4. It wasn’t quite as painful as I originally thought and I’ll discuss the differences below.

View the Example
View the Source Code

ILayoutElement

In Flex 4, UIComponent implements ILayoutElement which provides you a bunch of methods to manage the layout of each child. For 2D layouts you would use element.setLayoutBoundsSize( width, height, postLayoutTransform ) to set the size and element.setLayoutBoundsPosition( x, y, postLayoutTransform ) to set position.

OpenFlux instead allows you to set x, y, width, height, z, rotationX, rotationY, rotationZ directly to a token which is used to animate the child to its new position/size.

Matrix3D

With OpenFlux, you set the z, rotationX, rotationY, rotationZ properties directly. With Flex 4 you instead use element.setLayoutMatrix3D( matrix, postLayoutTransform ). Instead of passing in the above properties it instead expects an instance of Matrix3D. This was my first use of Matrix3D and Vector3D (FP10 classes) and had no idea what I was doing until I looked at the example Flex 4 WheelLayout

A common approach would be to first set the initial 3D coordinates of the child, next apply any rotation and third center the child in the container. Below is the Matrix3D code for AwesomeLayout:

var matrix:Matrix3D = new Matrix3D();
matrix.appendTranslation( elementWidth * -( selectedIndex – i ), elementHeight / 2, 0 );
matrix.appendRotation( Math.abs( selectedIndex – i ) * 2, Vector3D.Y_AXIS );
matrix.appendTranslation( width / 2, height / 2, 0 ); // center element in container
element.setLayoutMatrix3D( matrix, false );

maintainProjectionCenter

FP10 adds a perspectiveProjection property to the Transform class which works similar to a camera in Away3D. By default, the prespectiveProjection is set to the top left but for my layouts I need it to be the center of the container. This is easily done with the following code:

var pp:PerspectiveProjection = new PerspectiveProjection();
pp.projectionCenter = new Point(container.width / 2, container.height / 2);
container.transform.perspectiveProjection = pp;

Since wanting center projection is so common though, Flex 4 made this even easier by adding a maintainProjectionCenter flag to UIComponent. When the layout is attached to a container, I simply override the setter and set this property to true.

layer

Another pain in the butt with FP10 is that the z property has nothing to do with the z-index of the DisplayObject. What that means is even though the DisplayObject appears to be further away and smaller, it will still be in front of closer DisplayObjects unless you update it’s position in the display list.

Flex 4 solves this by adding a layer property to UIComponent. For the List component for example, this allows you to specify a different display list index for the item renderer compared to where it is located in the data provider. You simply set the layer property for each element (based on its z property ideally) and if required call container.invalidateLayering()

OpenFlux handles this automatically after the layout is done setting the position of each child.

Animation?

One question I’m hoping someone has a decent answer to is regarding animating the size/position of child elements. For example, if I switch layouts I want the children to be tweened to their new positions. This is easy to do with OpenFlux but I have no idea how to do it with Flex 4. I know Flex 3 introduced a dataChangeEffect but this seems to have disappeared with the Flex 4 List component.

What next?

So, I only implemented the very basics of the layout. Next steps would be to add support for measure, scrolling and virtualization. I’ve included a LayoutBase3D class which handles common 3D tasks. I’d love to see what layouts others come up with and think it would be cool to start a Flex 4 Layouts open source project.

Feel free to write any questions in the comments.

View the Example
View the Source Code

分类: 生活杂谈 标签: , ,

Flex 4的十大变化

2009年7月27日 评论已被关闭

1. 集成Adobe Catalyst

Flex 4的一个主要特性就是提供了对Adobe Catalyst(Adobe新的设计工具,用于创建富Internet应用而无需编写代码)集成的支持。Catalyst改变了开发者与设计者协作的方式,因为它清楚地知道应用开发者与设计者之间工作方式的显著差异。这样开发者与设计者都能专注于自己所擅长的领域,凭借Catalyst,无论开发者还是设计者都能按照自己所习惯的方式进行工作。Flex 4中的很多变化都是围绕着Flex与Catalyst的集成进行的。请查看Adobe Catalyst站点以了解其详细信息。

2. Spark组件架构

Flex的每个版本都包含了完整的组件库,其中含有用于构建应用的通用组件,如数据表格、按钮及布局容器等等。Flex 4的底层组件架构名为Spark,而在Flex 3中则叫做Halo。为了支持Catalyst,Flex 4更新了底层的组件模型以达到松耦合的目的。

在新的Spark组件模型中,核心逻辑、皮肤以及布局都被分开了,这样我们就能单独处理其中任意一部分而又不会影响到其他部分。Spark组件模型构建于 Halo组件模型之上,这意味着Spark扩展了Halo的核心基类UIComponent,这样我们就能以增量的方式使用Flex 4,同时还能将Flex 3组件应用在Flex 4应用中。

除此以外,Flex 4还对效果(effect)进行了增强。现在可以将效果应用在任意的对象和类型上,这么做提升了其灵活性。Flex 4的效果由新的“spark.effects”包实现。就像新的组件库一样,Flex 4的效果也被重新实现了,但却并没有对Flex 3的效果进行任何变更,这么做的目的是为了保持向后兼容。请查看Chet Haase所写的关于Flex 4效果的文章或是其博客以更多地了解Gumbo Effect。

阅读白皮书以更多地了解Spark架构

3. MXML 2009

MXML基于XML,构建于Flash Player所用的编程语言——ActionScript 3之上。MXML用于对用户界面和支持工具(比如说IDE,现在是Catalyst了)的视图区域进行布局。MXML 2009包含了大量更新以对不同的行为(核心、皮肤和布局)进行解耦,同时还提供了新的组件库。现在Flex 4的组件在其自己的包中(spark.components)得以实现,同时又没有对Flex 3的组件进行任何变更,为此MXML 2009专门提供了一个新的命名空间以提供支持。

下面的应用声明示例展示了如何使用该命名空间以及如何为Spark和Halo组件定义命名空间:

<s:Application
  xmlns:fx=”http://ns.adobe.com/mxml/2009″
  xmlns:s=”library://ns.adobe.com/flex/spark”
  xmlns:mx=”library://ns.adobe.com/flex/halo”>

这样,我们就可以通过下面的代码声明Flex 4的Button:

<s:Button label=”My Flex 4 Button” />

下面的代码声明了Flex 3的Button:

<mx:Button label=”My Flex 3 Button” />

请浏览MXML 2009规范以深入了解其变化。

4. 对View States的改进

Flex 2将状态(states)概念引入到了Flex框架中,这样我们就可以通过简单的状态改变来管理视图组件的变化。Flex 4改进了视图状态(view states)以简化其语法,这样我们就能更轻松地使用他们了。新语言属性includeIn和excludeFrom就是简化语法的一个例子,我们可以设定组件的这两个属性值以响应状态变化(参见下面的代码示例)。

<!– Given the states A,B,C –>
<m:states>
  <m:State name=”A”/>
  <m:State name=”B”/>
  <m:State name=”C”/>
</m:states>

<!– This button will appear in only states A and B –>
<Button label=”Click Me” includeIn=”A, B”/>

<!– This button will appear in states A and B –>
<Button label=”Button C” excludeFrom=”C”/>

点击这里以进一步了解View States的变化。

5. FXG支持

Flash Player的核心是个绘图引擎。Adobe在Flash Player 10中引入了FXG,现在又将其引入到了Flex中。FXG是个声明式的图形格式,可以在工具间传递内容,这意味着设计者可以在Catalyst或CS4 Illustrator中创建内容,接下来Flex应用开发者就可以将其导入并使用而无需修改任何内容。

请阅读FXG规范以了解更多细节信息。

6. 皮肤增强

Spark组件模型最大的变化在于对皮肤的颠覆性改造,现在皮肤可以控制组件的所有可视化部分,同时还将逻辑封装到了组件核心之外。这样我们就可以对组件的可视化部分进行独立修改而不会影响到底层的核心逻辑。

来看看PanelSkin.mxml皮肤文件吧,Panel容器的默认皮肤代码如下:

<?xml version=”1.0″ encoding=”utf-8″?>
<s:SparkSkin xmlns:fx=”http://ns.adobe.com/mxml/2009″ xmlns:s=”library://ns.adobe.com/flex/spark” alpha.disabled=”0.5″>

   <fx:Metadata>
   <![CDATA[
    /**
     * @copy spark.skins.default.ApplicationSkin#hostComponent
     */
    [HostComponent("spark.components.Panel")]
    ]]>
   </fx:Metadata>

   <fx:Script>
     /* Define the skin elements that should not be colorized.
      For panel, border and title backround are skinned, but the content area and title text are not. */
      static private const exclusions:Array = ["background", "titleField", "contentGroup"];

     /**
      * @copy spark.skins.SparkSkin#colorizeExclusions
      */
     override public function get colorizeExclusions():Array {return exclusions;}

     /* Define the content fill items that should be colored by the “contentBackgroundColor” style. */
     static private const contentFill:Array = ["bgFill"];

     /**
      * @inheritDoc
      */
     override public function get contentItems():Array {return contentFill};
   </fx:Script>

   <s:states>
     <s:State name=”normal” />
     <s:State name=”disabled” />
   </s:states>

    . . . . .

   <s:Rect left=”1″ right=”1″ top=”31″ height=”1″>
    <s:fill>
     <s:SolidColor color=”0xC0C0C0″ />
    </s:fill>
   </s:Rect>

   <!– layer 5: text –>
   <!– Defines the appearance of the PanelSkin class’s title bar. –>
   <s:SimpleText id=”titleField” lineBreak=”explicit”
      left=”10″ right=”4″ top=”2″ height=”30″
      verticalAlign=”middle” fontWeight=”bold”>
   </s:SimpleText>

   <s:Group id=”contentGroup” left=”1″ right=”1″ top=”32″ bottom=”1″>
   </s:Group>

</s:SparkSkin>

由于该皮肤文件唯一的作用就是控制Panel容器的可视化外观,因此设计者可以修改组件的样式而无需编辑其源代码,也不必了解组件的内部行为。更为重要的是,设计者可以按照自己熟悉的方式来使用Catalyst。

点击这里深入了解Gumbo的皮肤组件。

7. 更新的布局组件

熟悉Flex开发的人可能会注意到Flex 3中的大多数容器都已经不在Gumbo组件库中了。这是由于布局已经被解耦了,现在我们需要通过代理(delegtion)来处理他们。因为大多数 Flex 3容器仅仅就是为了提供不同的布局样式(比如说用于水平布局的HBox,用于垂直布局的VBox等等),因此现在他们已经没什么用了。

下面的示例表明Flex开发者现在也可以定义布局了。该示例利用Group类来管理按钮,Group是个新的Spark类,用于管理其中的内容条目。布局的结果就是两个并排放置的按钮,就像是使用Flex 3中的HBox的结果一样。

<s:Group width=”400″ height=”400″>
  <s:layout>
   <s:HorizontalLayout paddingLeft=”5″ paddingTop=”5″ />
  </s:layout>

  <s:Button label=”Button 1″ />
  <s:Button label=”Button 2″ />
</s:Group>

来自Adobe的Ryan Stewart对新的布局机制进行了深入分析

8. Flash Builder 4

Flash Builder 4(之前叫做Flex Builder)是面向应用开发者的最新的Eclipse IDE。该新版本带有众多更新,包括条件调试断点、更多的重构工具并支持FlexUnit 4。一如往常,它还包括MXML、ActionScript 3、可视化设计器以及Flex性能与内存分析器(只有专业版才有该性能分析器)。

除此之外,该最新版还提供了高级的数据管理特性以简化数据为中心应用的开发。这包括客户端的数据管理特性,它可以处理CRUD操作以及在大集合中进行滚动。

点击这里来深入了解该IDE。

9. 编译器性能

几乎每个Flex 3开发者心中都有一个痛——糟糕的编译器性能。基于此,Gumbo的一个主要目标就是改进Flex 4中的编译器性能。虽然官方尚未发布性能基准,但来自Adobe的Peter Donovan根据自己所作的一些试验对其进行了测试,结果表明新的编译器性能提升了25%。他说要想将性能提升3到4倍只能进行重新设计。当然了,每个企业级Flex应用的开发者都希望今年底Flex 4正式发布时能实现这一点。

请阅读Peter Donovan的文章来深入了解相关信息。

10. 新的文本功能

Flash应用(无论是Flex还是非Flex应用)的一个主要议题就是高效处理文本的能力。在Flash Player 10中,Adobe引入了全新的文本引擎以支持RIA的需要(多语言、打印以及键盘快捷键等等)。Gumbo引入了大量新的文本类(RichText、 SimpleText等等)以在Flex框架中提供更健壮的文本支持。除此以外,Adobe正在全力开发新的Text Layout Framework以赋予ActionScript 3开发者利用Flash Player文本引擎的能力。请点击这里以深入了解Text Layout Framework。

如你所见,Flex 4代表了该流行的RIA平台的巨大进步。请查看Matt Chotin的文章《What’s new in Flex 4 SDK beta》来深入了解Flex 4 SDK的变化。

作者简介

Jon Rose是Gorilla Logic, Inc.(位于科罗拉多州的博尔德)的一名企业软件咨询师和Flex业务主管。他还是知名的企业软件社区InfoQ.com的编辑。另外,他是DrunkOnSoftware.com的主办人之一,这是一个面向那些爱豪饮的朋友的视频网站。他的客户有小公司,也有政府部门。爱解决难题的天性使其致力于开发高质量的软件。你可以通过其博客了解他。

来至:http://www.infoq.com/cn/articles/top-10-flex4-changes

分类: 生活杂谈 标签:

免费获得Flash Builder Beta版序列号

2009年7月3日 评论已被关闭

免费获得Flash Builder Beta版序列号及其它adobe工具的序列号
https://freeriatools.adobe.com/

分类: 生活杂谈 标签: