现在的位置: 首页 > 综合 > 正文

iOS 静态库a文件的打包 中

2016年07月18日 ⁄ 综合 ⁄ 共 1429字 ⁄ 字号 评论关闭

这节内容我们继续说一下在有Xib和图片资源情况下的打包(开发环境Xcode 5.1),这里我会介绍两种方法(本节第一种):


     第一种 不正当的方法--只打包h和m文件,把图片资源和xib文件单独放到一个文件夹(比如文件夹的名字叫 Resources)下,在引入a文件的时候,同时把这个Resources文件夹引入进去(直接拖进项目中),所以打包的静态库a文件中图片和xib的路径不需要进行更改,平时开发项目的时候是这么写的,还是怎么写。具体来看看怎么做:


     第一步:新建一个类库打包项目(具体流程这里不做介绍,可参照  iOS

静态库a文件的打包 上
)如下图:

     


注意:上节在 architectures和Build
active Architecture Only 说的很详细,这这个属性也是经常会出错的地方,大家可以仔细阅读 静态库a文件的打包 上


第二步,在项目中新增一个ViewController (h、m、xib三个文件),起名问BundleViewController ,新建一个实体文件夹Resources,把BundleViewController.xib和1.jpg 放到改文件下,之后把这个文件拖进项目中,在Xib添加一个UIImageView
,图片资源选择1.jpg,
如下图:



第三步:在TestBundleLibrary.h/m文件声明和实现这么一个方法:

- (UIViewController *) getBundleVc

{

    BundleViewController *bundleVc = [[BundleViewController
alloc]
init];

   
return bundleVc;

}

OK 之后 我们可以Command+B(注意属性architectures和Build active Architecture Only设置,不明白参见静态库a文件的打包
),可以看到:


报UI的错,我们都知道UIXXX控件都是来自UIKit这个framework,我们看看这个框架是否引入:


红色就是没有引入,我们先把这个红色删掉,在重新添加UIkit,之后在 报错的页面 加入

#import <UIKit/UIKit.h>

再次Command+B 可以看到 a文件已经存在了,我们找到文件和他的头文件。


第三步:我们在建一个新项目Empty Application,起名为HelloBundle,引入这个a文件和头文件,同时,把打包项目中的Resources文件也要引入进去(切记),如下图:



第五步:在项目中的appdelegate中引入

#import "TestBundleLibrary.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary
*)launchOptions

方法中添加 三行代码(如 上图)

    TestBundleLibrary *testBundle = [[TestBundleLibrary
alloc]
init];

   
UIViewController *helloBundle = [testBundle
getBundleVc
];

   
self.window.rootViewController = helloBundle;

之后Command+B得到运行结果是如下图

大功告成,不理解的地方可以加我QQ:759448747 或者 加入iOS超级群 28926427

抱歉!评论已关闭.