WebViews iOS
本指南说明如何将嵌入在一个较大的 iOS 应用程式内的Cordova启用 web 视图元件。这些元件可以如何与对方沟通的详细资讯,请参阅应用程式外挂程式。
WebViews 为 iOS 支援开始与Cordova版本 1.4,用切肉刀
元件为其 Xcode 范本可作为一个参考实现。 Cordova 2.0 及更高版本仅支援基于子专案的刀实施。
这些指示要求至少Cordova 3.x 和 Xcode 6.0 中,以及从新创建的 iOS 专案的 config.xml
档。 你可以使用程式的命令列介面来创建一个新专案,然后获取 config.xml
从档中的命名的应用程式子目录内platforms/ios
.
要按照这些说明进行操作,请确保您有最新的Cordova分布。从cordova.apache.org下载并解压其 iOS 包。
将刀添加到 Xcode 专案 (CordovaLib 子专案)
如果它正在运行,请退出 Xcode。
打开一个终端并导航到Cordova iOS 的原始目录。
复制
config.xml
档到专案目录上文所述。打开 Xcode 并使用 Finder 来复制
config.xml
档到其专案导航视窗。选择创建组的任何添加的资料夹,然后按完成.
使用 Finder 来复制
CordovaLib/CordovaLib.xcodeproj
档到 Xcode 的专案导航器选择
CordovaLib.xcodeproj
内专案导航器.键入选项-命令-1键的组合,以显示档检查器.
选择相对于组档检查器器下拉式功能表中的位置.
在导航专案中选择专案图示,选择目标,然后选择生成设置选项卡。
添加
-force_load
和-Obj-C
的其他连结器标志值。按一下专案导航器中的专案图示,选择目标,然后选择生成阶段选项卡。
展开连结二进位档案与库.
选择+按钮,然后添加下列框架。 (可选) 在导航专案内, 移动它们框架组下:
AssetsLibrary.framework CoreLocation.framework CoreGraphics.framework MobileCoreServices.framework
扩展目标的依赖关系,与该标签,如果有多个框顶部的框。
选择+按钮,然后添加
CordovaLib
生成产品。展开连结与库的二进位档案,与该标签,如果有多个框顶部的框。
选择+按钮,然后添加
libCordova.a
.设置Xcode 首选项 → 位置 → 派生资料 → 高级...到独特.
在专案导航器中选择专案图示,选择你的目标,然后选择生成设置选项卡。
搜索标题搜索路径。该设置,添加这三个值以下,包括引号:
"$(TARGET_BUILD_DIR)/usr/local/lib/include" "$(OBJROOT)/UninstalledProducts/include" "$(BUILT_PRODUCTS_DIR)"
Cordova 2.1.0,如
CordovaLib
已升级为使用自动引用计数 (弧)。 你不需要升级到弧要使用CordovaLib
,但如果您想要升级您的专案使用弧,则应使用 Xcode 迁移向导从编辑 → 重构 → 转换为目标 C 弧...功能表中,取消选择 libCordova.a,然后运行向导完成。
使用 CDVViewController
添加以下标头:
#import <Cordova/CDVViewController.h>
具现化一个新的
CDVViewController
和保留它在某个地方,例如,到类的属性:CDVViewController* viewController = [CDVViewController new];
(可选) 设置
wwwFolderName
属性,预设为www
:viewController.wwwFolderName = @"myfolder";
(可选) 设置的起始页
config.xml
档的<content>
标记,或者本地的档:<content src="index.html" />
...或是远端站台:
<content src="http://apache.org" />
(可选) 设置
useSplashScreen
属性,预设为NO
:viewController.useSplashScreen = YES;
设置视图框架。始终设置为最后一个属性:
viewController.view.frame = CGRectMake(0, 0, 320, 480);
向视图添加刀:
[myView addSubview:viewController.view];
添加 HTML、 CSS 和 JavaScript 资产
创建一个新的目录,在专案中,
www
为例。将 HTML、 CSS 和 JavaScript 资产放到此目录。
使用 Finder 将目录复写到 Xcode 的专案导航视窗。
选择任何添加的资料夹创建资料夹的参考档.
设置相应的
wwwFolderName
和startPage
你最初创建的目录的属性或使用预设值 (在上一节中指定) 时具现化CDVViewController
./* if you created a folder called 'myfolder' and you want the file 'mypage.html' in it to be the startPage */ viewController.wwwFolderName = @"myfolder"; viewController.startPage = @"mypage.html"