成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

iOS Xcode制作靜態庫詳解

移動開發 iOS
一些iOS開發,有開發靜態庫的需求,本身iOS的開發,只允許靜態庫或者Framework。在Xcode上沒有找到允許編譯,如同Android上的*.so和Win32上的dll這樣的說法。不過Framework這樣的框架,估計也是類似動態庫的實現,不過沒有具體研究過,后續繼續深入研究。
注意:首先確保你的XCODE4使用IOS5,否則請下載IOS5在繼續閱讀。
IOS程序是由Objective-c語言構成,而是Objective-c語言中每一個類又分成 .h .m 文件。靜態庫可以將這些程序的類封裝成一個.a文件,第三方應用程序只需要拿到這個.a文件和代碼對應的.h文件即可使用靜態庫中封裝的方法??偟膩碚f IOS靜態庫適合去制作第三方提供的SDK,廢話不多說了我們直接進正題。
首先打開Xcode4創建一個靜態庫工程,如下圖選擇Framework&Library ->Cocoa Touch Static Library (創建靜態庫),點擊右下角按鈕“next”繼續完成創建。

工程創建完畢后,我們開始編寫代碼。我們創建一個UIView類用來顯示一張圖片,并且點擊該視圖后打開一個網址。
創建視圖類的.h文件
  1. #import <UIKit/UIKit.h>   
  2.        
  3. @interface MyView : UIView   
  4.        
  5. @end   

創建視圖類的.m文件

顯示的圖片資源為通過URL下載后谷歌的LOGO,點擊該LOGO視圖后程序將打開百度的主頁。
  1. #import "MyView.h"   
  2. @implementation MyView         
  3. - (id)initWithFrame:(CGRect)frame   
  4.     {   
  5.         //初始化視圖位置   
  6.         self = [super initWithFrame:frame];   
  7.         if (self) {   
  8.                
  9.         }   
  10.         return self;   
  11.     }     
  12. - (void)drawRect:(CGRect)rect   
  13.     {   
  14.         //這里創建一個圖片視圖   
  15.         UIImage *image=[[UIImage alloc]initWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://www.google.com.hk/intl/zh-CN/images/logo_cn.png"]]];   
  16.         [image drawInRect:CGRectMake(00,self.frame.size.width , self.frame.size.height)];   
  17.         [image release];   
  18.     } 
  19. -(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event   
  20.     {   
  21.       //點擊視圖后打開網頁   
  22.       [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.baidu.com"]];   
  23.     }   
  24. @end   

到這一步靜態庫中的代碼我們已經寫完,現在我們開始制作靜態庫。靜態庫的制作方法可分為兩種:第一種為在真機上使用的靜態庫,第二種為在模擬器中使用的靜態庫。這兩種方法制作起來有點小區別,請大家一定看好了,別眨眼睛喔, 我們開始從模擬器入手。

如圖,先選擇模擬器iPhone 5.0 Simulator,如果你的XCODE4不是IOS5版本那么你將沒有這個選項,然后Build工程,構建工程完畢后libSDKLib.a靜態庫文件遍生成了出來, 選擇該文件鼠標右鍵找到它。

找到文件以后,默認為Debug-iphoneos / libsdklib.a ,但是這個文件是不能在模擬器中使用的,并且它也不能在真機中使用。你需要選擇下面Debug-iphoneosimulator / libsdklib.a這個文件,將libSDKLib.a與對應MyView.h頭文件拖拽入使用它的工程當中。

接下來創建一個普通的IOS工程,先選擇模擬器運行 iPhone5.0 Simulator ,然后將libSDKLib.a 與MyView.h拖拽添加至程序當中即可。

運行工程即可看到效果,本例中通過URL加載了一張谷歌的LOGO,觸摸點擊該視圖后打開百度的首頁。

調用靜態庫的方法如下:

  1. #import "ViewController.h"    
  2. #import "MyView.h"    
  3. @implementation ViewController    
  4. - (void)didReceiveMemoryWarning    
  5.     {    
  6.         [super didReceiveMemoryWarning];    
  7.         // Release any cached data, images, etc that aren't in use.    
  8.     }     
  9.     #pragma mark - View lifecycle    
  10. - (void)viewDidLoad    
  11.     {    
  12.         [super viewDidLoad];    
  13.         //創建靜態庫視圖    
  14.         MyView *myView = [[MyView alloc] initWithFrame: CGRectMake(00120100)];    
  15.         //將靜態庫視圖添加至窗口當中    
  16.         [self.view addSubview:myView];    
  17.         [myView release];    
  18.     }    
  19. - (void)viewDidUnload    
  20.     {    
  21.         [super viewDidUnload];    
  22.         // Release any retained subviews of the main view.    
  23.         // e.g. self.myOutlet = nil;    
  24.     }    
  25. @end 

OK ,到這一步我們已經將靜態庫順利的應用在模擬器當中,下面我們學習如何將靜態庫應用在真機當中。我們再次回到制作靜態庫的工程當中,如圖打開工程后編譯環境選擇IOS Device,然后構建構成即可完成。

使用鼠標右鍵找到libSDKlib.a,這時候Debug-iphoneos / libSDKlib.a 就是可以在真機上編輯的靜態庫。
 
最后將libSDKLib.a 與MyView.h拖拽添加至程序當中,連接上真機運行工程即可在真機上看到效果了。值得注意的是模擬器和真機用的libSDKLib.a必需要嚴格的區分開,否則程序會報錯。
責任編輯:閆佳明 來源: oschina
相關推薦

2011-08-18 10:47:48

Xcode 4靜態庫

2011-08-02 14:15:05

XCode 靜態 鏈接庫

2011-07-22 16:15:11

IOS 靜態類

2015-09-01 10:37:54

ios靜態庫開發

2013-04-08 10:47:42

Xcode靜態代碼分析

2011-07-06 10:22:31

XCode IOS object-C

2011-07-28 14:31:55

Xcode 調試 異常

2011-07-19 15:44:18

Xcode 卸載

2015-09-11 11:02:23

ios靜態庫開發

2011-07-07 16:08:41

2011-08-03 14:54:09

2011-07-20 10:59:46

2011-07-26 14:44:53

調試 Xcode

2021-12-06 11:51:43

靜態庫動態庫C語言

2011-08-29 09:33:24

WindowsQt庫靜態

2011-07-22 18:41:11

Xcode 文檔 腳本

2011-08-01 16:24:04

XCode CodeTimer 測試

2011-08-11 13:10:34

XcodeSVN

2013-04-15 10:48:16

Xcode ARC詳解iOS ARC使用

2011-08-04 18:09:32

Xcode 技巧 文檔
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区不卡 | 欧美精品一区二区蜜桃 | 色婷婷综合在线观看 | 精品久久精品 | 欧美综合在线观看 | 蜜桃毛片 | 超碰97av| 成人伊人网 | www亚洲精品 | 亚洲三区视频 | 亚洲美女天堂网 | 亚洲电影一级片 | 精品国产乱码久久久久久丨区2区 | 日韩一区二区三区在线 | 一区二区三区欧美在线观看 | 国产人成精品一区二区三 | 久久国产激情视频 | 欧产日产国产精品99 | 日韩一区二区三区视频在线观看 | 欧美一区二区免费在线 | 精品一区精品二区 | 日本不卡免费新一二三区 | 日韩欧美一区二区三区免费观看 | 国产欧美一级二级三级在线视频 | 精品蜜桃一区二区三区 | 18性欧美| 色约约视频 | 国产精品视频久久久 | 国产高清一区二区三区 | 精精精精xxxx免费视频 | 中文字幕国产视频 | 97国产精品视频人人做人人爱 | 在线中文字幕国产 | 黄色欧美在线 | 亚洲成人自拍 | 欧美精品国产精品 | 日韩精品久久 | 九九伊人sl水蜜桃色推荐 | 久久国产视频网 | 亚洲精品资源 | 精品一区二区在线观看 |