title: Xcode使用Cocoa Touch Framework新建Framework
tags: Cocoa Touch,framework
date: 2016-01-11
網上有很多教程使用Xcode新建Framework的教程,不過使用的是Cocoa Touch Static Library,Xcode 6有一個新的功能,通過Cocoa Touch Framework。能直接生成Framework。
step1
打開Xcode,新建工程,選擇Cocoa Touch Framework,命名為xibFramework.

step2
1)在framework中添加類,資源等文件。

如上圖所示,在Resource中添加xib,在xibFramework.xvassets添加framework中所需要使用到的圖片。
2)在xibFramework.h中導入#import <xibFramework/CustomView.h>

xibFramework是新建framework時,自動生成的,把所有需要公開的類的頭文件包含在這個.h文件中,在使用framework時,只需要導入這個.h文件即可
3)選中xibFrmework|Build Phases
,在Headers
中將所有需要公開的頭文件拖入Public
中.在Run Script
中添加ios-build-framework-script.sh
腳本(下載地址)。

若
Build Phases
中沒有Headers
和Run Script
,在右上角的+處將他們加入到Bulid Phases
中
shell
腳本的路徑要寫對,否則編譯的時候會找不到,demo中shell腳本放在xibFramework/xibFramework
4)腳本解析
這個腳本是生成支持arm64 armv7 和i386 x86_64(i386和x86_64并為用xcodebuild命令來生成,當你選擇在模擬器下編譯時,會生成支持這兩種架構的framework)架構的framework。該腳本只允許用戶在模擬器下編譯,否則會報錯,生成后的framework存放在工程目錄的Release-universal或者Debug-universal目錄下

到這一步,就已經生成了framework,下面對framework使用
step3
1)新建工程,選擇Single View Application
,命名為UseFrmeworkDemo
2)將xibFramework.framework
拖入
UseFrmeworkDemo
中,并使用framework

選擇UseFrameworkDemo|General
,在Embedded Binaries
和Linked Frameworks and Libraries
中加入xibFramework,在拖入xibFramework
時,Linked Frameworks and Libraries
中就會加入這個framework
.
3)command+R
運行工程,可以看到xibFramework
的控件在UseFrameworkDemo
中能正常使用了.
xibFramework 下載地址
UseFrameworkDemo 下載地址