2007年10月 的存档

Adobe AIR 窗口基础

电介质 发布于 2007年10月17日 星期三

Adobe AIR的窗口API包含下列的类。

Package Classes
flash.display

NativeWindow, NativeWindowInitOptions

用下列类定义的窗口字串常量:

NativeWindowDisplayState, NativeWindowResize, NativeWindowSystemChrome

flash.events NativeWindowBoundsEvent, NativeWindowDisplayStateEvent, NativeWindowErrorEvent
flash.system NativeWindowCapabilities

Adobe AIR提供一个容易使用的,跨平台的窗口API,用于建立本地操作系统窗口,可以使用flash,Flex,和HTML编程技术去创建。

使用AIR,你有很大的空间开发外观感觉很好的应用程序。你可以创建看起来和标准桌面应用程序一样的窗口,当运行在MAC系统下时匹配苹果的风格,在Windows系统下运行时与微软的风格保持一致。你也可以使用皮肤,扩展flex框架提供的风格(chrome不知该如何翻译,有知道的提醒一下,谢谢!),而建立你自己的窗口风格。你甚至能用矢量图或位图画你自己的艺术化的窗口,同时AIR完全支持透明和与桌面的alpha混合。矩形窗口太普遍了吧,画个圆的玩玩。

AIR支持两种截然不同的窗口工作APIs:flash导向的本地窗口类(NativeWindow)和HTML导向的JavaScript窗口类。使用flash场景直接用NativeWindow类创建窗口和显示列表。去加入视觉对象到本地窗口,你加入对象到窗口场景的显示列表。用javascript创建的窗口使用html、css和javscript显示内容。要加入视觉对象到html窗口,你要加入内容到DOM。(翻译的别扭附上原文AIR supports two distinct APIs for working with windows: the Flash-oriented NativeWindow class and the HTML-oriented JavaScript Window class. Windows created directly with the NativeWindow class use the Flash stage and display list. To add a visual object to a NativeWindow, you add the object to the display list of the window’s stage. Windows created with JavaScript use HTML, CSS, and JavaScript to display content. To add a visual object to an HTML window, you add that content to the DOM (using any common browser-related technique). )

注意:HTML窗口是一个特殊的本地窗口类型。AIR主机附加一个本地窗口属性给HTML窗口,就是提供访问本地窗口实例下的入口。(好像翻译不准确附带原文Note: HTML windows are a special category of NativeWindow. The AIR host adds a nativeWindow property to HTML windows that provides access to the underlying NativeWindow instance. )

被你的应用程序自动创建的第一个窗口,基于AIR的应用程序描述文件在rootContent元素详细说明的参数指定。如果根内容是一个SWF文件,一个本地窗口被建立并且这个SWF文件被载入窗口。如果根内容是一个html文件,那么一个HTML窗口被创建,并且这个HTML页被载入。

本地窗口使用一个基于事件的程序模式。在窗口对象里改变一些属性或者调用方法,可以影像应用程序显示或行为,原因是,应用程序组件发布事件通知,感兴趣的组件能够监听到事件。例如,当系统最大化按钮被用户点击,下列是事件会发生的顺序:

1.用户点击最大化按钮。

2.一个显示状态改变(displayStateChanging)事件被发送到窗口。

3.如果没有被注册的监听者取消这个事件,那么这个窗口就会最大化

4.一个显示状态改变(displayStateChanging)事件被窗口发布通知给监听者,告诉它这个改变已经发生了。

5.一个移动(move)事件被发送到顶端,窗口左角因为最大化操作被移动。(原文不知到是否这样翻译有点怪A move event is dispatched if the top, left corner of the window moved because of the maximize operation. )

6.一个改变大小(resize)的事件被发送,窗口的大小因极大化操作被改变。

窗口最小化,还原,关闭,移动,和改变大小事件顺序也是类似的。

关于窗口API类,方法,属性,和事件的详细描述,参看 AIR ActionScript 3.0 Language Reference (http://www.adobe.com/go/learn_flex3_aslr). 关于使用Flash显示列表的一般信息, 看 “Display Programming” 部分在 Programming ActionScript 3.0 (http://www.adobe.com/go/programmingAS3) 参考里.

文章分类: AIR ->2 条评论 »

Adobe AIR已经更新了

电介质 发布于 2007年10月13日 星期六

10月1日Adobe AIR beta2发布了,具体看 http://labs.adobe.com/downloads/air.html

比beta1有了较大的变化,除了一些API的变化外,AIR应用程序的描述文件(application.xml)也有了变化,具体看http://labs.adobe.com/wiki/index.php/AIR:Release_Notes文档说明。

稍前一天9月30日,Adobe AIR for Flash CS3 Professional 的update也更新到beta2,详情看http://labs.adobe.com/wiki/index.php/AIR:Flash_CS3_Professional_Update文档,之前装过beta1的要根据文档说明卸载更新了。

相应的各类开发文档也更新到Beta2版本,具体看http://labs.adobe.com/wiki/index.php/AIR:Documentation文档页面,主要涉及三块文档,Flex开发、HTML和Ajax开发、Flash开发,除了有在线文档地址外,还都有相应的.zip包文件,供下载本地使用,每个都包括开发指南和语言参考。3个zip文件下载链接地址如下:

面向Flex的AIR开发文档http://download.macromedia.com/pub/labs/air/air_b2_docs_flex_100107.zip

面向HTML和Ajax的AIR开发文档http://download.macromedia.com/pub/labs/air/air_b2_docs_html_100107.zip

面向Flash 的AIR开发文档http://download.macromedia.com/pub/labs/air/air_b2_docs_flash_100107.zip

也可以经常去它们3个的开发中心去看看更多的AIR开发交流信息

Flex的AIR开发中心http://www.adobe.com/devnet/air/flex/

HTML 和 Ajax的AIR开发中心 http://www.adobe.com/devnet/air/ajax/  

Flash 的AIR开发中心 http://www.adobe.com/devnet/air/flash/

前面阅读学习的blog文档也有过时的地方,请以上面最新文档为主。

粗略的扫了一下新的文档,感觉这个版本的功能也比Beta1要强大了许多,许多Beta1版提示不支持的功能,这一版也都开始有支持了。

文章分类: AIR ->发表评论 »