iOS 在同一個workspace下跨項(xiàng)目文件的相互引用

參考文檔:

  1. http://www.pianshen.com/article/6225225685/
  2. https://blog.csdn.net/kangpengpeng1/article/details/79311156

一. 在同一個workspace下創(chuàng)建多個項(xiàng)目

1.新建一個workspace工作空間:

1.png

將創(chuàng)建的工作空間命名為“xxxx”, 然后將xxxx.xcworkspace保存到項(xiàng)目根目錄文件夾(我這里新建項(xiàng)目的根目錄為LGWorkspace)

2.創(chuàng)建多個工程project:

2.png

創(chuàng)建一個Demo1項(xiàng)目:

3.png

將工程Demo1 添加到上一步創(chuàng)建的workspace中:

4.png

同理將工程Demo1 添加到上一步創(chuàng)建的workspace中,

注意:所有的多個項(xiàng)目與workspace要放在同一目錄下。

5.png

二. 工程中引入pod管理

1. 終端命令

// 進(jìn)入項(xiàng)目目錄
$cd + 項(xiàng)目根目錄

// 創(chuàng)建 Podfile文件
$touch Podfile

// Podfile文件寫完后,接著install
$pod install

Podfile文件注意點(diǎn)如下:

# 寫在最上面,表示公用
platform :ios, '10.0'

#  用cocoapods導(dǎo)入OC框架到Swift項(xiàng)目必須寫該項(xiàng)
# use_frameworks!

## workspace文件名
workspace 'LGWorkspace.xcworkspace'

##  主工程路徑
project 'Demo1/Demo1.xcodeproj’

## 工程路徑
target 'Demo1' do
project 'Demo1/Demo1.xcodeproj’
pod 'SVProgressHUD'
end

##  工程路徑
target 'Demo2' do
project 'Demo2/Demo2.xcodeproj’
pod 'MJRefresh'
end

2. 項(xiàng)目框架截圖如下:

6.png

三、Demo1和Demo2文件的相互引用

如果要在項(xiàng)目Demo1中引用Demo2中的文件,則必須要修改路徑。在Demo1的Build Settings 里找到Header Search Paths,添加一項(xiàng)(SRCROOT)/../Demo2(也可以直接將文件夾Demo2拖到里面自動生成路徑),并且設(shè)置為recursive。(SRCROOT)是當(dāng)前的工程路徑,.. 是返回上一層,然后到TestApp_2文件夾。使用了相對路徑,為了是項(xiàng)目移動不會影響這個配置,只要主工程和其他工程的相對位置不變,這里的相對位置是固定在同一個文件夾。

7.png

引入工程中的文件時,必須同時引入 .h 和 .m 文件。測試結(jié)果:

8.png

當(dāng)Demo1里其他地方也同時調(diào)用了Demo2里的方法,則只需要引入.h文件,否則編譯失敗。

9.png

在Demo2里再寫一個方法,放在剛才的testFunc方法里調(diào)用:

10.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容