IOS如何在當前工程中匯入另一個工程檔案
阿新 • • 發佈:2019-02-07
可能很多大牛都見過FaceBook的three20框架的原始碼,但是不知道大家有沒有對它裡面的工程之間的相互引用,相互呼叫產生過一些興趣和疑問,如下圖:
由於目前公司正在做一個類似three20的app框架,我的兩位ios大牛使出自己的各種絕技、大招,現在終於做出了一個初期的版本,我因為經驗略顯骨幹,所以沒怎麼瞎摻和,但就耳濡目染也學到了很多東西,我就把自己學到這個關於專案之前聯調,以及在專案中編輯新的framework的東西,總結並分享給大家。 我還是以問題的方式來解答吧,順序是時間順序 一,如何將兩個專案整合到一個專案下(圖1) 可能你試過直接在一個專案裡面直接把另一個專案拖進來,也試過add File..這些東西,但是最終可能還是沒能完成,那麼,到底要怎麼做呢?完成!這時,已經能夠看到要新增的東西已經在我們的專案目錄下了(圖1)。 新增完成之後,我們試著改動一下新加入的專案的內容,比如把它程式碼改出點問題,比如下圖
這時,之前我們在圖3所示位置新增的非法的程式碼就會報錯了,這時,就說明我們新加入的專案已經和當前專案產生了關聯。
當我們和新加入的專案產生了關聯之後,我們可能想去呼叫或者使用裡面的累或者方法,首先我們把新加入專案的一個頭檔案“TestFrameworks.h”引入當前專案的AppDelegate當中,這時我們又看到了報錯!編譯器說他沒有發現這個標頭檔案在哪裡!?
Header Seach Path 裡面的路徑應該為新加入專案的Products資料夾下,“.a”或者“.app”檔案的路徑下的,include資料夾裡面的資料夾的路徑下,如圖8
選擇編譯新加入的專案(真機模式),如圖10:
在新加入專案的Build
Phases下,開啟Copy Files 點選相應的左下角的“+”號,在彈出框裡面輸入“.h”,這時就會看到所有未加入到include檔案的標頭檔案,然後選擇新增。如圖11
這樣新加入的檔案的標頭檔案也就正常引入到專案了,我們在新加入的類TestFramework設定斷點,然後執行,發現確實已經被引用,如同12
轉自:http://www.th7.cn/Program/IOS/201504/433337.shtml