標籤:
一、建立bundle
前2篇文章介紹了iOS 最新framework和.a靜態庫製作及使用全解 iOS 工程套子工程,主工程和framework工程或.a library靜態庫工程聯調
我現在是在主工程的子工程裡進行,當然你在建立靜態庫工程(子工程)的時候也可以。前面我是懶得再建工程了,接著現成主工程套子工程的項目。
1.按步驟操作
2.因為iOS架構中沒有bundle,要選中OS X架構找到bundle,如
二、往bundle加資源檔
將工程中的資源檔都加入到剛剛建的bundle中,如xib、圖片。點+號或直接拖都行。步驟如。
三、設定bundle
1.iOS Deployment Target改為你支援的最低版本
2.設定base SDK 為latest iOS
四、編譯bundle
如選擇你的bundle作為target進行編譯
五、使用bundle裡的資源檔
1.如將你的bundle拖到主工程的copy bundle resources
2.使用xib代碼如下
NSBundle *bundle = [NSBundle bundleWithURL:[[NSBundle mainBundle] URLForResource:@"APPBaseSDKBundle" withExtension:@"bundle"]]; NSArray *nibs = [bundle loadNibNamed:@"ZLFTabBar" owner:nil options:nil];
3.使用圖片代碼如下
NSBundle *bundle = [NSBundle bundleWithURL:[[NSBundle mainBundle] URLForResource:@"APPBaseSDKBundle" withExtension:@"bundle"]];UIImage *iv = [UIImage imageNamed:@"zhuanqian" inBundle:bundle compatibleWithTraitCollection:nil];//或UIImageView *v2 = [[UIImageView alloc] initWithFrame:CGRectMake(0,100, 50, 50)]; v2.image = [UIImage imageNamed:@"APPBaseSDKBundle.bundle/zhuanqian"];
六、修改資源檔後的處理
1..對於已經製作成了靜態庫,每次對資源檔有修改都要重新編譯bundle。
2.對於主工程套子工程的情況還有另一種方法不用重新編譯bundle。如給主工程添加對子工程的依賴,這樣每次編譯主工程的時候也會編譯子工程。
給子工程添加對bundle的依賴,這樣每次編譯子工程時候也會編譯bundle。
經過2層依賴關係,那麼編譯主工程時候就會編譯資源檔。
iOS framework靜態庫中使用xib和圖片資源詳解