Adobe AIR - 带图像的自定义预加载器

2023-12-28

Folks,

我设计了一个Adobe AIR应用。我想展示一些preloader在它打开之前。

任何人都可以指导我的教程preloader 专门针对 AIR或者任何已经内置的?

Thanks


借助 AIR,我可以想出几种方法来实现这一目标:

1. 使用本机窗口

将主 WindowedApplication 的“visible”属性设置为“false”。在“creationComplete”事件中,会生成一个包含启动屏幕的新窗口。在显示应用程序之前执行必要的逻辑。引导完成后,关闭启动屏幕并将主应用程序的“可见”设置为“true”。

2. 在一个窗口中,使用状态

创建 2 个状态(例如“正在加载”和“正常”)。将主 WindowedApplication 的“currentState”属性设置为“loading”。在此状态下显示您的启动屏幕。在显示应用程序之前执行必要的逻辑。引导完成后,将“currentState”属性设置为“正常”。在“正常”状态下显示您的实际应用程序。

3. 透明申请

通过透明的 AIR 应用程序,您可以使用状态(如 n° 2)和假窗口。您的主应用程序将是一个覆盖整个屏幕的透明窗口。现在,您可以将启动屏幕和主视图放置在透明窗口内的任意位置。不用担心:您可以点击透明窗口,这样就不会遮挡任何内容。

我可以向您展示一些代码,但我需要有关您的应用程序的更多具体信息。

编辑:示例

最简单的解决方案是 nr 2:

<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
                       xmlns:s="library://ns.adobe.com/flex/spark"
                       xmlns:v="net.riastar.view"
                       currentState="loading"
                       creationComplete="boot()">

    <fx:Script>
        <![CDATA[
            private function boot():void {
                var bootstrap:Bootstrap = new Bootstrap();
                bootstrap.addEventListener(Event.COMPLETE, showApp);
                bootstrap.boot();
            }

            private function showApp(event:Event):void {
                currentState = 'normal';
            }
        ]]>
    </fx:Script>

    <s:states>
        <s:State name="loading" />
        <s:State name="normal" />
    </s:states> 

    <s:Image source="@Embed('splash.jpg')" includeIn="loading" />
    <v:MainView includeIn="normal" />

</s:WindowedApplication>

以 Windows 为例

<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
                       xmlns:s="library://ns.adobe.com/flex/spark"
                       xmlns:v="net.riastar.view" 
                       creationComplete="showSplash()" 
                       visible="false">

    <fx:Script>
        <![CDATA[
            import mx.events.AIREvent;
            import spark.components.Window;

            private var splash:Window;

            private function showSplash():void {
                splash = new SplashWindow();
                splash.systemChrome = "none";
                splash.type = NativeWindowType.LIGHTWEIGHT;
                splash.addEventListener(AIREvent.WINDOW_COMPLETE, boot);
                splash.open();
            }

            private function boot(event:AIREvent):void {
                var bootstrap:Bootstrap = new Bootstrap();
                bootstrap.addEventListener(Event.COMPLETE, showApp);
                bootstrap.boot();
            }

            private function showApp(event:Event):void {
                callLater(splash.close);

                var mainWin:Window = new MainApplicationWindow();
                mainWin.open();
            }
        ]]>

    </fx:Script>

</s:WindowedApplication>

这需要更多解释:在您的应用程序中,您必须将“systemchrome”设置为“none”,将“visible”设置为“false”,将“transparent”设置为“true”。您还必须将“visible”属性设置为“false”。这些设置将有效隐藏主应用程序窗口。然后,我们依次创建一个用于启动屏幕的窗口和一个用于主视图的窗口。重要的是,主 WindowedApplication 保持不可见,因为另一种方法会在启动屏幕显示之前使该窗口短暂可见(似乎是一个错误)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Adobe AIR - 带图像的自定义预加载器 的相关文章

  • Flash - HTTP 请求在本地主机上不起作用

    首先 我试图修复一些我一开始就没有构建的东西 项目负责人向我保证 当他离开时 它工作得很好 尽管自从他离开后我从未接触过的版本似乎已经同样的问题 一般来说 我对编程也有点陌生 所以如果我在第一篇文章中遗漏了重要信息 请告诉我 我会尝试添加更
  • iOS:AVPlayer 视频预加载

    我正在使用 AVPlayer 来播放视频 它们的长度很短 2 5秒 它们以随机顺序播放 问题是 当更改视频并开始播放新视频时 设备会滞后很短的时间 但我不希望更改流畅 有没有办法用 AVPlayer 预加载视频 尝试使用AVQueuePla
  • 从 mx:Image 复制位图数据

    如何从 mx image 组件复制位图数据 我需要在应用程序的多个屏幕中显示相同的图像 并且不想多次下载该图像 我可以只使用 urlrequest 将图像下载为位图并复制它 但我喜欢只设置图像组件的源的方式 Image延伸SWFLoader
  • 在没有流媒体服务器的情况下在 Flash 中录制 h.264 视频?

    是否可以在不需要流媒体服务器 如 fms wowza red5 的情况下从 Flash Actionscript 相机 即网络摄像头 保存 h 264 视频 我还想从麦克风获取样本数据 并在客户端对其进行转码 以便用户可以录制 h 264
  • Flex 中的数组与 ArrayCollection

    谁能解释一下 Flex 中 Array 和 ArrayCollection 之间的区别吗 根据 liveDocs ArrayCollection 类是一个包装器 将数组公开为的类 可以访问的集合以及 使用方法和操作 ICollectionV
  • 如何将 C# 与 AIR 结合使用?

    我在制作 Flex 网站方面有一些基本经验 但我认为 Flex 在制作桌面 AIR 应用程序方面更有用 无论如何 我想知道是否至少可以将 C 与 Actionscript AIR 一起使用 我找不到任何这方面的例子 另外 我可以在 Flex
  • getElementById 无法在 的 Google Chrome 扩展中工作

    在我的 Google Chrome 扩展内容脚本中 我有以下内容 jQuery document ready function var player document getElementById player console log pl
  • Flex:监听文本区域中链接上的“悬停”

    我试图找出链接何时 悬停在 显示 html 文本的文本区域中 我想知道监听光标更改类型的事件是否可能是这样 我在文档中找不到任何内容 有谁知道我可以在这里收听什么活动吗 Thanks 这是一个非常有趣的问题 根据凯的建议 我想到了一种返回A
  • 如何在 Flex 中对 ArrayCollection 进行排序

    我想按 fieldName 升序对 Arraycollection 进行排序 这是我的代码 我想知道它是否正确 你有什么建议吗 public static function arrayCollectionSort ar ArrayColle
  • 如何打开/关闭 iPhone 相机闪光灯 swift 2?

    我正在寻找如何打开 关闭 iPhone 的相机闪光灯 我发现了这个 IBAction func didTouchFlashButton sender AnyObject let avDevice AVCaptureDevice defaul
  • 预加载 javascript 和 css 文件

    我目前正在开发一个移动网站 该网站大量使用图像 CSS 和 JavaScript 例如 它使用未压缩的 150KB 的库 我为图像构建了一个预加载器 效果相当好 function loadImages images var sum 0 fo
  • 使用 Flex 3 从 SWF 创建 EXE,而不需要 AIR?

    我有一个用 Flex 3 MXML 和一些 AS3 编写的简单的小测试应用程序 我可以将其编译为 SWF 但我想将其制作为 EXE 这样我就可以将它提供给我的几个同事 他们可能会发现它有用 使用 Flash 8 我可以只针对 EXE 而不是
  • 使用 Javascript 检测 Pepper (PPAPI) Flash

    我们使用的是专有的文档查看器 它与某些 Chrome 版本中的 Pepper 版本的 Flash 配合得不太好 所以我希望能够检测到它并重定向到不同格式的相同内容 由于这个版本似乎落后于 NPAPI 版本 所以我一直在使用闪光检测 http
  • 为什么 swfloader 不工作?

    我正在尝试使用 mxml swfloader 组件从以下 url 加载外部 Flash 但它不加载任何内容 我正在使用 FlashBuilder 4 5 http somesite com en interface swf token 12
  • Adobe Air - 检测连接是否为 WIFI、3G 或 EDGE

    我需要确定设备正在使用哪种连接类型 在 iOS 上区分 WIFI 和 3G 似乎不是问题 使用网络信息ANE http www adobe com devnet air native extensions for air extension
  • AS3/Flash/Flex 中的枚举? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 相对于 AS2 我真正喜欢 AS3 的一件事是它增加了多少编译时类型检查 然而 它似乎有些不足 因为没有可用的类型检查枚举结构 在 A
  • 用于商业 Web 应用程序的 Flash - 为什么不呢?

    我从事开发商业网络应用程序的行业 它们大多供内部使用 有时有合作伙伴区域 但很少可供公共互联网使用 它们是帮助公司运营业务的应用程序 一段时间以来 我有一个想法困扰着我 为什么不使用 Flash 到现在为止都是ASP NET AJAX 这还
  • OpenLaszlo 终止加载的 Flex 应用程序的一些鼠标事件

    这是一个关于 OpenLaszlo 或者更确切地说 Flex 内部结构的问题 我能够将完整的 Flex 应用程序 swf 加载到 OpenLaszlo 中 主干版本 旧版本失败 它适用于 Flash 10 和 11 但 OpenLaszlo
  • iOS:适用于 iOS 的基于 Flash 的编程应用程序?

    我想知道 有没有办法支持 iOS 的基于 Flash 的编程应用程序 它可以是本机 混合或网络应用程序 我想知道 是否有可能为 iOS 设备开发基于 Flash 的应用程序 我看过论坛 到处都说这是不可能的 所以只想在开始任何开发之前确认一
  • as3 - 如何停止视频并分离 NetStream

    我有来自服务器的视频流 稍后我想并排添加另一个视频 那就好 我做到了 现在当我想删除视频时我的问题来了 我设法将其从显示中删除 但我可以听到视频仍在后台播放 那么我怎样才能停止播放该视频呢 这是我设置视频的代码 ns new NetStre

随机推荐

  • 请建议:使用实体框架时的 SQL Server 标识与唯一标识符键

    我正在设计一个相当复杂的系统 我们主要关心的问题之一是支持 SQL Server 点对点复制 这个想法是支持多个地理上分离的节点 第二个问题是在中间层使用现代 ORM 我们的首选一直是实体框架 主要是因为开发人员喜欢使用它 他们喜欢 LiN
  • php mySQL 组 concat 和 group by

    我有两张桌子 table 1 row car id car model 1 1 CAR 1 2 2 CAR 2 3 3 CAR 3 4 4 CAR 4 table 2 row car id car features 1 1 Features
  • apache .htaccess 重写 - 我可以将其移至 httpd.conf 中吗

    下面是我的唯一代码 htaccess文件与apache 2 2 我读过 使用它会对性能产生影响 htacess如果这个可以用完就更好了httpd conf 因此我可以将其添加到httpd conf 如果是的话我会把它放在哪里 是否需要进入每
  • 如何为所有按钮设置不同的随机数?

    我的数组中有 4 个按钮 我能够生成一个随机数并将其设置为所有这些按钮 但这不是我打算做的 我真正想做的是为每个按钮设置一个随机数 例如 我可以在每个按钮中包含 18 15 10 和 11 而不是在所有四个按钮中包含 17 我如何为所有按钮
  • 实现动态滚动的算法

    创建动态滚动实现有哪些好的算法 该功能将在自定义 UI 列表上进行测试 虽然我的目标是移动设备 那些没有内置此功能的设备 但来自不同编程领域的任何算法或代码示例也可能适合 自从最初提出这个问题以来 我仔细阅读了 Pastrykit 的源代码
  • 使用 Bash 读取文件中的行并避免带有 # 的行

    我试过这个 file myfile while read r line do line continue address line 127 0 0 1 done lt file 此代码不会避免以注释开头的行 即使我没有任何意见 dnsmas
  • 如何删除通过类添加的操作

    我试图删除插件在单独的functions php 文件中注册的操作 但语法难倒了我 该插件 我无法复制 粘贴 商业插件 推断 add action 如下 class Plugin Class function add actions add
  • 如何在 Gemfile 中指定最低 Ruby 版本?

    我知道我可以在 Gemfile 中指定 Ruby 版本 如下所示 ruby 2 0 0 但是 我不想设置确切的 Ruby 版本 而是希望能够指定最低 Ruby 版本 以便我的脚本与新版本的 Ruby 保持兼容 您可以改为引发异常 raise
  • 为什么我的 sinon 存根表现得像是在调用真实函数?

    我正在尝试遵循这个例子 https www alexjamesbrown com blog development stubbing middleware testing express supertest https www alexja
  • 如何在 TypeScript 中使用 lodash.mixin

    我的团队正在评估将一些文件从 JavaScript 切换到 TypeScript 并且我们在代码中广泛使用了一些自定义 mixin 方法 从一些基本测试来看 虽然我们可以使用 mixin 按照规范创建 mixin 但我们无法在不出现编译错误
  • 如何修复 GIT 错误:HEAD:无效的引用日志条目 xxxxxxxxxxxxxxxx

    我之前遇到过错误 GIT错误 目标文件为空 然后我使用了中提到的方法如何修复 GIT 错误 目标文件为空 https stackoverflow com questions 11706215 how to fix git error obj
  • 以循环模式使用 tomcat

    我想在配置中运行我的 tomcat 实例 其中通过循环将请求提供给多个 tomcat 实例 我不想使用任何内部集群管理器 据我所知 如果每个请求都由不同的tomcat提供服务 则未知的sessionId将到达tomcat 因此它将被迫创建一
  • GKE:修改现有集群 - 删除节点标签并更改网络

    我使用以下 CLI 命令创建了 Kubernetes 集群 gcloud container clusters create some cluster tags some tag network some network 我现在想 禁用 t
  • R:使用 cat() 获得类似 Unix 的换行符 LF 写入文件

    我尝试将字符向量写入 Windows 7 R 3 2 2 x64 下的文本文件 并且我想要 unix LF 到 Windows CRLF v lt c a b c cat nl file textfile txt sep n writes
  • DestinationViewController Segue 和 UINavigationController swift

    所以我有一个像这样的prepareForSegue方法 override func prepareForSegue segue UIStoryboardSegue sender AnyObject if segue identifier f
  • 使用 TripleDes、PKCS7 和 ECB 进行 PHP 加密/解密

    我的加密函数工作正常 但是我不知道如何让解密函数给出正确的输出 这是我的加密函数 function Encrypt data secret Generate a key from a hash key md5 utf8 encode sec
  • Zipalign - 未找到命令 - MAC 终端

    当我尝试在 apk 上运行 Zipalign 时 出现错误 Command not found 我不太熟悉在 MAC 上使用终端命令 但我已导航到 SDK Tools 文件夹并运行以下命令 zipalign v 4 Project1 apk
  • 将 Swift 与 Qt 结合使用

    我们可以很容易地使用Qt 中的 Objective C 和 C https stackoverflow com questions 23404158 qt run object c code 23404257 23404257 观看了 Ap
  • jQuery:动画后 div 弹回完整尺寸

    在下面的 jQuery 示例中 我将一个 div 放在另一个 div 中 当我将内部 div 的宽度设置为 0 时 外部 div 具有绝对定位 的宽度也会随之减小 这是所希望的 问题是 动画完成后 外部 div 会弹回到原来的大小 这是预期
  • Adobe AIR - 带图像的自定义预加载器

    Folks 我设计了一个Adobe AIR应用 我想展示一些preloader在它打开之前 任何人都可以指导我的教程preloader 专门针对 AIR或者任何已经内置的 Thanks 借助 AIR 我可以想出几种方法来实现这一目标 1 使