`
reverocean
  • 浏览: 192993 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

air去除边框,及启动画面

    博客分类:
  • Flex
 
阅读更多

编辑air-app.xml中<systemChrome>none</systemChrome>

<mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" 
layout="absolute" showFlexChrome="false">showFlexChrome=false

 

http://www.flexer.cn/blog/?cat=44

这是一篇来自ultravisual blog的文章,向读者讲述如何给一个AIR应用创建一个启动界面,原文地址是:

http://ultravisual.co.uk/blog/2009/07/20/effective-splash-screens-for-adobe-air-applications/

说起启动界面,相信读者都很熟悉,当一个软件体积很大,导致加载比较缓慢的时候,通常的做法是显示一个启动界面,告诉用户这个软件正在启动,这在很大程度上改善了用户体验,因为用户通常情况下忍受不了软件的加载速度不是因为你的软件加载慢,而是你没有显示一个界面出来通知用户,这会让用户心理上感觉时间很漫长,可能几秒钟用户都无法等待,而如果有实时的界面显示,几十秒都不是很大的问题,举个例子,Adobe的Photoshop大家可能用过或接触过,它的体积是很大的,如果没有启动界面,你就会感觉启动无法忍受,甚至会怀疑自己点击错误没有成功启动Photoshop而去多点击几下。所以说启动界面在大体积的软件加载过程中的作用是非常大的,也是我们在软件设计的阶段需要考虑到的一个重要的问题。

同理我们在开发AIR应用(注意AIR也是桌面应用)的时候,也可以引入启动界面的机制。下面我们来看看如何在AIR开发中去实现这个功能。

首先需要先准备一张位图,这个图片用于你的程序加载完毕并显示之前,先显示给用户一个界面,可以是你的应用的Logo之类的,你可以用Photoshop或其它的位图处理工具来制作这个图片,在这个例子中,要使用的位图如下图所示:

下面让我们来看看实现的过程。首先我已经在Flex Builder中创建了一个AIR项目,并且我的主程序文件是基于“WindowedApplication”组件的,并且其它的弹出窗口是基于Window或其它的可弹出的绘图组件。window组件使用是非常方便的,所以这里我也将使用window作为我的启动界面的容器,并且需要设置的地方是去除这个Window的边框和系统样式,只保留要显示的那张位图。要删除系统边框和样式,你需要修改应用程序的配置XML并且更改以下的部分:
<systemChrome>none</systemChrome>
<transparent>true</transparent>
<visible>false</visible>
注意通过这样设置之后,系统默认将显示Flex的默认皮肤。在主程序文件的窗体中,这个样式非常酷,但是在启动界面的窗体中,我们还是需要把它的边框删除掉。你可以通过下面的设置来隐藏边框和皮肤:

 

 type=”lightweight”
showFlexChrome=”false”
transparent=”true”
visible=”false”

然后我们希望启动界面的位置要处于屏幕的中央,可以通过更改这个窗体的坐标来实现,注意窗体跟Flash里其它的显示对象类似,也有自己的坐标定位(x,y),而计算它的位置我们又需要知道屏幕的尺寸,屏幕的尺寸我们可以通过Screen类来获取,代码示例如下:
private function init():void {
this.nativeWindow.x = Screen.mainScreen.visibleBounds.width/2 – this.width/2;
this.nativeWindow.y = Screen.mainScreen.visibleBounds.height/2 – this.height/2;
this.nativeWindow.visible = true;
}
在显示启动界面的同时,我们希望主界面是隐藏的,只是设置visible是false是不够的,我们同时给它设置坐标值是一个很大的负值,比如-2000,然后我们再添加启动界面到显示列表。
<x>-2000</x>
<y>-2000</y>
mainWindow = this.stage.nativeWindow;
mainWindow.visible = false;
splashScreen = new Splash_Window();
splashScreen.open();

 

在这个应用里,我只是简单的添加了一个Timer(计时器)来控制启动界面和主界面的显示/隐藏,实际上你在开发的时候可以根据具体的真实情况(比如数据的加载情况),来实时的控制这个过程。

源码下载地址:

Move to Flare from Frame

 

 

Flex AIR)Flex AIR如何去除窗口的边框、菜单栏
2010-03-23 11:44

最近做个AIR小项目,刚开始构建的时候遇到个比较头疼的去除AIR窗口边框的问题,网上搜索了一下大多都是Flash AIRas代码的方法,不太适合Flex开发AIR,经研究后这里总结一下Flex开发AIR桌面程序去除窗口边框、菜单栏的方法,以及自定义最小化、关闭按钮。

`

一、去除窗口边框、菜单栏http://hi.baidu.com/taotao5453

`

方法1、更改xxxx-app.xml

打开项目主应用程序.MXML同文件夹内的xxxx-app.xml xxxx和你的主应用程序名称相同),

找到其中的

<!--<systemChrome></systemChrome>- ->

<!--<transparent></transparent>- ->

将其改为(注意去除两边的注释符<!-- -->)

<systemChrome>none</systemChrome>

<transparent>true</transparent>

并在主应用程序.MXML中<mx:WindowedApplication增加2个属性:showStatusBar="false" showTitleBar="false"

如果不是对AIR主窗口设置,而是对其中的弹出窗口就使用方法2,直接在属性中定义

`

方法2、对窗口容器使用属性定义

<mx:Window容器为例,即可为它定义4个属性:systemChrome="none" transparent="true" resizable="false" showStatusBar="false" showTitleBar="false"

`

二、自定义最小化、关闭窗口按钮等http://hi.baidu.com/taotao5453

以对AIR主窗口<mx:WindowedApplication进行操作为例:

NativeApplication.nativeApplication.exit();//退出

NativeApplication.nativeApplication.activeWindow.close();//退出

NativeApplication.nativeApplication.activeWindow.minimize();//最小化

NativeApplication.nativeApplication.activeWindow.startMove();//开始拖动

如果是在主窗口类中则可用this替代NativeApplication即可。

如果是<mx:Window则是NativeWindow而不是NativeApplication

 

原文地址:http://hi.baidu.com/wshe505/blog/item/a4743af2e2a2945c352accc3.html

分享到:
评论

相关推荐

    在windows下激活Airprint无线打印 AirPrint+Activator

    AirPrint无线打印技术当前仅面向Mac开放,并且只能在几款惠普打印机上实现。没有这些AirPrint兼容打印机的可以借助一款名为Printopia的Mac程序激活AirPrint功能,那么Windows用户呢?想在PC上启用AirPrint的Windows...

    airprinter 1.6.6.1 无限制版

    如果你有台iPhone手机, 或者苹果iPad平板电脑,那么你可以很方便得利用苹果iOS系统内置AirPrint功能WiFi无线打印照片,Word,PDF等各种文件到你的Air Printer打印机,但有个前提是你的打印机必须支持苹果Air Print...

    Air Printer 1.6.6.1破解补丁

    如果你有台iPhone手机, 或者苹果iPad平板电脑,那么你可以很方便得利用苹果iOS系统内置AirPrint功能WiFi无线打印照片,Word,PDF等各种文件到你的Air Printer打印机,但有个前提是你的打印机必须支持苹果Air Print...

    win-airplay

    值得注意的是,如果在使用过程中出现了投屏画面不完整的情况,可以通过将Windows 10设置中系统全局的DPI缩放修改为100%来解决。此外,该软件对带宽要求是在10M以上,所以用户在使用之前需要确保WiFi的信号良好,总的...

    airplay协议源码及详细协议资料

    libshairplay源码, airplay protocol中英文资料

    构建Adobe AIR应用程序

    从浏览器启动安装的 AIR 应用程序 第 16 章: 更新 AIR 应用程序 关于更新应用程序 提供自定义应用程序更新用户界面 将 AIR 文件下载到用户的计算机 检查应用程序是否为首次运行 使用更新框架 第 17 章: 查看源...

    android启动界面

    android启动界面

    as3 adobe air ios airplay

    adobe air 连接 airplay功能

    全AIR 的 Socket通信(air服务端、air客户端)

    全AIR 的 Socket通信,air服务端、air客户端,没有用到其他后台语言

    flashair电脑版v3.00官方最新安装版

    flashair电脑版是在电脑上使用flashair存储卡必装的一款软件,这款软件可以让用户对flashair卡进行设置、软件更新、初始化。flashair电脑版可通过无线LAN在...双击下载好的“FlashAir.exe”文件,将启动安装向导。如

    flash_AIR实例教程资料及源文件

    flash_AIR实例教程资料及源文件 包括AIR、flash、代码、文档

    airplay隔空投放

    airplay最新的版本了,内面包括airplay.c、airplay_parser.c、airplay_parser.h、plist_parse.c、airplay_parser_callback.c几个重要实现文件,苹果用的二进制文件是binplist,解析已经封装到plist_parse.c里面,新测...

    airplay播放器airmusic使用说明

    附件是最近很畅销的airplay传输器airmusic的使用说明

    AirPrinter_Setup_1661.exe

    AirPrint 是可以让应用软件通过 Apple 的无驱动程序打印体系结构,创建无损打印输出的 Apple 技术。所有支持打印的 iOS 内建 app 均使用 AirPrint。App Store 上使用 iOS 打印系统的 App 也使用 AirPrint。官方 Air...

    AIR教程-AIR教程

    AIR教程 1 Adobe AIR右键菜单和系统托盘(Tray)功能以及实现方法 2 如何将应用程序最小化到托盘,然后给托盘图标加右键菜单以及添加相应的事件,来激活应用程序窗体

    Flex AIR软件免安装ADOBE AIR程序

    解决AIR对ADOBE AIR的依赖,软件绿色版

    MacBookAir安装双系统

    MacBookAir安装双系统,在MacBookAir上安装windows7.0系统,使MacBookAir可以选择系统启动,进入不同的使用系统环境。

    stm32f103c8t6,AT控制air模块v1.0.1.7z

    2、使用前需要更改drivers/air/air.h文件中的宏定义 //按需求更改型号 #define AIR2XX_SUPPORT //#define AIR720_SUPPORT 代码功能 (根据需求在main.c中更改执行的函数即可测试) 实验1 GSM接电话 实验2 GSM...

    air运行环境,air桌面运行环境

    air运行环境,air桌面运行环境 欢迎大家下载

    adobe air 安装包part5

    adobe air 安装包partadobe air 安装包partadobe air 安装包part

Global site tag (gtag.js) - Google Analytics