框架是一个目录,这个目录包含了共享库,访问共享库里代码的头文件,和其它的图片和声音的资源文件。一个共享库定义的方法或函数可以被应用程序调用。
iOS提供了很多你可以在应用程序里调用的框架。要使用一个框架,需要将它添加到你的项目中,你的项目才可以使用它。许多应用程序都使用了如Foundation、UIKit、和Core Graphics这些框架。根据你为应用程序选择的模版,相关的框架就已经被自动引入了。如果默认加入的框架不能满足你的应用程序的需求,你也可以加入需要的框架。
在gitHub上有一个非常惊人的开源项目:iOS-Universal-Framework. 这个工程基本上是一个项目模板。你只需安装这个项目,就可以创建框架(Xcode原生也能创建框架)。
现在,让我们讨论安装过程还有如何使用它:
下载zip文件.保证你放在一个地方,并方便日后使用。B/C工程模板,每次你更新XCode的时候,你都需要重新安装这个项目模板(不要担心,安装过程非常的快)。确保XCode已完全关闭解压缩zip文件并转到文件夹:Real Framework/install.sh如果你熟悉使用命令终端,只需运行install.sh。如果你不熟悉,那么只需把它改名为 install.sh.command 并双击运行它。当它开始运行,它会询问你:XCode安装在哪里。如果你没有修改过默认XCODE的安装路径,只需回车确认。然后它会再询问你,需要安装在什么地方。只需敲入y并回车。输入密码,回车等待安装结束打开Xcode并打开New Project窗口。在IOS选择框架和库的地方,你会发现多了一个选择“Static iOS Framework” 点击下一步,敲入你的框架名称,并按照一般的步骤创建工程。现在,你有了一个全新的框架!但是,你应该如何使用它?
你基本上可以把它当做一个普通工程。但是,当你需要创建公共的API的时候,你需要告诉它。
现在让我们一步一步创建一个框架,发布你的公共API,并使用它!
使用new project对话框创建你的框架 你现在创建了一个空白的项目。现在我们添加一个新的类。在这个例子中,我们添加一个UIView的类,名字叫做MyView. 现在,我需要这个API供使用这个框架的开发者能正常使用,我需要让.h文件变为公共。点击项目导航器的项目,并选择build phase:当你点击扩展Copy Header面板,你会看到3个选项,Public, Private和 Project。默认设置的话,当你添加一个新的文件,它会在project中可见。当你需要把它改变为public,只需把头文件拖到public面板中。
4. 让我们在class中输入一些代码:
@implementation MyView -(id)init { self = [super init]; if(self) { self.backgroundColor = [UIColor orangeColor]; } return self; } @end我们把我们的View的默认背景颜色设为橙色
5. 现在下一步是可选的。但是我的观点是最好也配置一下。如果你使用Apple的默认框架的时候,你会发现import语句就像:#import UIKit/UIKit/.h 或者 #import QuartzCore/QuartzCore.h 。这有个优点,就是你知道框架的名字,然后知道引用哪个头文件。这些头文件在框架中全部是public的API。所以你不需要添加一堆头文件。
所以让我们按如下步骤来做。
第一,打开 Add New File对话框,并添加头文件:
为头文件命名(跟框架的名字一样),在头文件里面,加入#import语句,添加你的框架中所有的公共头文件。
现在,不要忘记了在Build Phase面板它把变为PUBLIC!!!(步骤3)
6. 编译项目,现在就可以使用它了。
7. 创建一个新工程,对于这个例子我们就创建一个简单的View应用,叫做MyApp.
8. 当项目创建后,点击项目面板,并下拉到"Linked Frameworks and Libraries Section",并点击加号按钮:
现在点击“Add Other”按钮跳至你的框架页面:
是时候写些代码了!
9. 首先打开ViewController.m文件,写入你的代码:
10. 运行你的项目,你就会看到如下画面:
你现在就完成了一个框架,可以在不同的项目和组之间共享这个框架了!
参考:http://www.oschina.net/translate/create-your-own-ios-framework