EdgeAnimateView-iOS 1.0.2

EdgeAnimateView-iOS 1.0.2

测试已测试
语言语言 Objective-CObjective C
许可证 MIT
发布日期最新发布2015年9月

Alex Manarpies维护。




EdgeAnimateView可以在iOS设备上提供对Adobe Edge Animate作品的单行支持。根据目标操作系统(iOS 7、8或9),EdgeAnimateView将选择正确的网页视图并为其配置。在iOS 8及更高版本上,使用WKWebView,为动画提供本机Safari网络性能。

demo

安装

EdgeAnimateView-iOS通过CocoaPods提供。要安装它,只需将以下行添加到您的Podfile

pod "EdgeAnimateView-iOS"

用法

演示项目提供了一个 Objective-C iOS 应用,显示本地捆绑的演示动画。

存储在应用程序捆绑中的本地动画

显示存储在应用程序捆绑中的Adobe Edge Animate动画可以通过创建一个EdgeAnimateView实例并加载包含从Adobe Edge Animate发布的输出的.bundle目录来实现。

self.edgeAnimateView = [[EdgeAnimateView alloc] init];
[self.edgeAnimateView loadEdgeAnimateBundleName:@"ea_test"]; // will load ea_test.bundle from the app bundle

有关如何捆绑Edge Animate文件的信息,请参阅捆绑本地文件部分。

网络托管动画

类似地,远程动画可以加载如下

self.edgeAnimateView = [[EdgeAnimateView alloc] init];
[self.edgeAnimateView loadEdgeAnimateURL:[NSURL URLWithString:@"http://www.domain.tld/path/to/your/animation.html"]];

捆绑本地文件

由于iOS加载应用程序捆绑中存储的文件的方式(文件层次结构被扁平化,无法在.ipa中存在目录)以及Xcode默认将非代码资源复制到应用程序捆绑中(.js文件捆绑为代码,但应捆绑为资源),因此将您的Edge Animate文件包裹在具有.bundle扩展名的目录中更方便,因为Xcode自动将这些捆绑为资源。

这目前涉及4个步骤。我可能在某个时候编写一个脚本来自动化这个过程。

1. Edge Animate发布设置

要让Adobe Edge Animate生成平展的文件结构(html,js和资源位于根目录),请将发布设置设置为

publish settings

注意“在Adobe CDN上托管运行时文件”未选中,因此运行时JS文件将包含在发布目录中。

2. 修改JavaScript包含

您还需要修改HTML输出以从根目录引用Edgejavascript库。

将HTML(第~8行)更改为

<script type="text/javascript" charset="utf-8" src="edge_includes/edge.6.0.0.min.js"></script>

<script type="text/javascript" charset="utf-8" src="edge.6.0.0.min.js"></script>

3. 复制到应用中的 .bundle 目录

在您的应用程序源目录中,创建一个扩展名为 .bundle 的目录,例如 ea_test.bundle,并将 Edge Animate 生成的发布文件复制到该目录。

注意:如果您创建 .bundle 目录后无法打开它,您可以右键单击它,选择 "显示包内容"

示例文件结构

bundle structure

4. 添加到您的 Xcode 项目

使用 Xcode

简单地将 .bundle 目录拖动到项目导航器中。

使用 AppCode

AppCode 默认按不同方式引用文件夹。为了正确添加 .bundle 目录,请记住要勾选标签为 "为文件夹创建引用" 的单选按钮

appcode

要求

  • iOS 7.0 或更高版本
  • 用于创建 HTML5 动画的 Adobe Edge Animate

文档

EdgeAnimateSupport.h

定义了 Edge Animate 加载支持的接口(协议)。

EdgeAnimateView.h

包裹在 WKWebView+EdgeAnimateSupportUIWebView+EdgeAnimateSupport (根据 iOS 目标版本而定)的类。

如果需要更多灵活性,可以直接使用上述类。

WKWebView+EdgeAnimateSupport

此分类增加了将本地的 Edge Animate 动画加载到 WKWebView 的支持。由于 iOS 8 对 WKWebView 的实现阻止从本地文件系统加载内容,此分类采用了一种方案,将动画 .bundle 复制到 /tmp/www,然后从那里加载。

UIWebView+EdgeAnimateSupport

为此标准 UIWebView 添加了相同的支持。

NSBundle+EdgeAnimateSupport.h

NSBundle 添加了嵌入式包加载。

作者

Alex Manarpies,aceontech.com

许可证

EdgeAnimateView-iOS 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。