Flex mobile入门

原创 2011年01月14日 13:21:00

Adobe Flash Builder 4 简体中文正式版 Windows版点击下载:http://g.csdn.net/5134151
Adobe Flash Builder 4 简体中文正式版 Mac版点击下载 :http://g.csdn.net/5134152
Adobe 在线课堂:http://adobev.csdn.net/zx/index.html
Adobe平台技术峰会课程视频:http://adobev.csdn.net/

今年,在MAX大会上,Adobe实验室正式发布了Flex mobile. 我花了点时间研究了下multi-screen MAX Volume experience的移动程序,想要和大家分享下我的心得。


用flex开发移动应用主要是针对在Android运行时下运行的AIR,而不是用于移动网络的Flex。仅使用针对这个运行时的as3或Flash Professional程序的话,大多数的api都是可用的。举个例子,在移动版和桌面版中,麦克风对象的工作原理是一样的。特定于移动交互的新功能都已经合并进运行时中以便更方便的使用。手机交互键(menu,back,home)都是通过键盘对象和响应事件来完成的;加速器对象触发事件传递X,Y和Z数据并像麦克风对象一样设定轮询。

 

Flex Mobile已经跟随这些同样的模式并极力保持与标准开发环境一致。Flex团队为达到这种效果做出了很大的努力。在移动或桌面模式,很多组件都是这样工作的,就像buttons,在移动开发时就不需要任何调整。在移动开发中需要调整的对象通过一个特殊的移动主题(不是通过主题浏览器)来重新定义皮肤。TextInput对象有一个简单的皮肤并默认调用Android键盘来输入。当列表(list)对象的交互方式设为触摸时,它会实现拖拽滚动,并且主题会在列表不滚动时隐藏滚动条。像这样的小功能使Flex Mobile变得格外简单和快捷。

 

对开发人员而言,最大的改变就是要注重主程序层组件执行的方式。对移动版来说,Flex项目有 一个新的MobileApplication对象作为根对象。这个对象用不用标签来建立都可以,不管用什么方法建立都是一个ViewStack。现在所有 的Flex Mobile应用都是基于ViewStack模式。单独的窗口是基于新的“view”组件,仅仅是所有意图的一个集合。当视图被推出堆栈,MobileApplication就会以默认的或开发者定义的过渡效果将相关的窗口推进或推出视图。

 

开发过程中,仅使用ViewStack的应用有一些注意事项。

首先,在组件之间很难共享view对象。Flex Mobile在顶层提供了一个“actionBar”,用来解决共享对象的问题,否则,所有在特定窗口显示的对象将必须明确的加入那个视图中。

第二,你将需要一个好的框架来组织视图之间的事件和数据。View对象不能够接收和检查其它组件的数据,所以一个好的传递数据的系统是必要的(如果你以前没有这样做,现在必须要这样做了)。为此,我用的是Robotlegs微结构并且发现整合起来很简单。

 

有一些例外,Flex Mobile目前仅包含Spark组件套。例外的是这小数的组件没有像图表组件那样被转移到Spark中,也没听说Adobe在近期会有这个意图。强制使 用Spark组件能是Flex Mobile应用保持小身材和高性能,反正Flex Mobile也不打算向后兼容,他这样决定也是有意义的。

 

另外一个教程是关于皮肤和项渲染器的。Adobe这次建议只使用AS项渲染器对象,避免使用MXML的皮肤。这是出于性能原因的考虑,AS3代码编译器写出的代码并不比我们自定义的项渲染器要简明的多,(当然这只是希望)。我发现稀疏的MXML皮肤并没有对我们的应用起真正的作用,所以你可以在适当的时候跨越这条“建议”。

 

就像我说的那样,Flex Mobile入门是非常简单和快速的,除了那些跟我们正常的开发步骤有少许差别的和标准移动开发要注意的事项(不同的屏幕大小,性能和内存有关,等等),它与桌面开发区别很少。


Adobe已经写了大量关于Flex Mobile的文档,你可以到Adobe Labs的页面看到它们以获得更多的信息.

 

FLEX4 语法及重点概要---入门篇(超详细)

chapter 1 : intruduction to flex4 1、flex包含一个基于组件的开发模型,你只需要按需求继承现有的组件并扩展相关的方法就可开发你的应用。2、可视化组件包括以下主要特...
  • xiunai78
  • xiunai78
  • 2016年12月21日 12:21
  • 1493

Flex入门(二)——Flex+BlazeDs+J2ee小实例

首先来简单介绍一下BlazeDS。 BlaseDS的核心功能包括RPC Services(远程过程调用服务) 和Messaging Service(消息服务)。BlazeDS是一个基于服务器的Java...
  • liujiahan629629
  • liujiahan629629
  • 2014年07月30日 19:04
  • 3401

flex布局完全入门教程

提纲 CSS介绍 盒子模型 什么是flexbox flex-direction flex-wrap flex-flow justify-content align-items align-conten...
  • liyuechun520
  • liyuechun520
  • 2017年07月15日 16:50
  • 611

Flex应用性能优化

本章简介前几章介绍了Flex应用开发的主要内容,本章将介绍Flex应用性能优化相关的知识,比如如何减少SWF文件的大小和内存泄漏问题以及改善代码性能的技巧等。很多时候,影响应用性能的主要因素是设计。不...
  • zhangchen124
  • zhangchen124
  • 2017年03月18日 21:18
  • 882

Flex mobile 翻转屏幕

利用stage.setAspectRatio(StageAspectRatio.LANDSCAPE) 这个事横屏的切换 stage.setAspectRatio(StageAspectRatio.P...
  • u013671526
  • u013671526
  • 2014年11月11日 16:05
  • 660

FLEX4 语法及重点概要---入门篇(超详细)

chapter 1 : intruduction to flex4 1、flex包含一个基于组件的开发模型,你只需要按需求继承现有的组件并扩展相关的方法就可开发你的应用。   ...
  • vector5210
  • vector5210
  • 2014年09月26日 17:44
  • 1944

编译器工具 Flex Bison for Windows 简单入门例子

最近从事一个系统仿真软件的开发,里面定义了自己的描述性语言MSL, MSL语言经FlexBison转换成C语言,然后用C编译器来编译并计算仿真。 现在领域驱动开发比较热门,有机会定义自己的语言对程序员...
  • Chinamming
  • Chinamming
  • 2013年11月26日 22:57
  • 6015

flex mobile性能优化点

这个mobile开发,一般原生开发也许是最合适的方式,但是涉及到跨平台的问题,有精力的团队一般都会逐个基于移动操作系统进行开发。但是我追求短小,精悍,快速。于是我希望能够跨平台,基于html5开发是一...
  • u013406800
  • u013406800
  • 2015年02月04日 23:06
  • 548

【教程】基于FlashBuilder创建的FLEX项目使用教程精简版

使用环境:使用FlashBuilder创建的FLEX项目和FLEX库项目 1、当创建一个FLEX项目(项目名例如叫做myFlex)的时候会自动建立一个叫做myFlex.mxml的文件:这是一个窗...
  • kdsrpg
  • kdsrpg
  • 2016年04月19日 13:10
  • 4452

在flex&bison的基础上利用符号表进行语义分析

/* *Name:gramtree_v1.h *Author:WangLin *Created on:2015-10-03 *Version 2.0 *Function:定义语法树&变量符号表&函数符...
  • qq_24421591
  • qq_24421591
  • 2015年11月28日 17:37
  • 4586
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Flex mobile入门
举报原因:
原因补充:

(最多只允许输入30个字)