create groups 與 create folder references選哪個?
當我們xcode開發中,如何正確新增檔案等資源?
可能很多人只是拖入檔案資源,但是忘記勾選【create groups】這時候出現錯誤,找不到檔案,或者.h標頭檔案無法引用?
一:案例介紹演示
圖:示範
1、步驟提示:
1、拖入第三方檔案,選項為【create folder references】時候,error報錯顯示,找不到引用的第三方檔案【“ ‘XXXXX.h’ file not found”】。
2、刪除此第三方(【move to trash】完全刪除,刪除所有的引用)
3、重新拖入第三方檔案,選項為【create groups】時候,success啦!
2正確截圖提示:
所以:
拖入新的檔案等資源時候記得勾選:【Copy items if needed】和【Create Groups】
二、淺析:【Create groups】與【create folder references】區別與聯絡?
1、如果選擇了Create groups方式添加了一個檔案,我們會發現被新增進來的檔案,資料夾是黃色的
2、選擇了 Create folder references方式新增進來的檔案的資料夾是藍色的
如圖:
圖:2者資料夾效果圖
三、深析【create groups】 與 【create folder reference】及【copy item if needed】區別與聯絡?
1.使用Create groups
圖1.使用Create groups
為任何新增加的資料夾建立組,組的概念也許我們並不陌生,我們在專案中完全可以手動新增一個groups(右鍵點選選擇New Group),但是手動新增的groups實際上並不會存在於專案的目錄中,你會發現被新增進groups中的檔案仍在位於它原來所在的位置,但是從外部引入進來的groups並不會如此,正如我們剛才那樣。groups一旦被建立或新增,都是以黃色資料夾的形式存在的,當你想要使用資料夾中的某個類的標頭檔案時,你可以直接新增它的引用,例如
#include xxx.h
因為groups下的cpp檔案是會被編譯的。
所以:建議✔️使用【Create groups】
2.使用Create folder references方法
圖2.使用Create folder references方法
只是將檔案單純的建立了引用,這些檔案不會被編譯,所以在使用的時候需要加入其路徑,比如在我們想要使用上圖中的myScripts資料夾下面有某個標頭檔案,則需要按照下面的方法新增宣告:
#include myScripts/xxx.h
否則編譯器就會告訴你找不到xxx.h檔案。
這就是專案中黃色資料夾與藍色資料夾的區別以及使用方法
所以:不建議❌使用【Create folder references】
3、至於Destination對應【copy item if needed】 選項,
圖3、至於Destination對應【copy item if needed】 選項,
1、當你選擇了這個選項時,如果你想要引入的檔案不在你的專案檔案的目錄下,Xcode則會自動將這個檔案複製一份拷貝到你的專案的目錄下
2、如果你不選擇,並且這個檔案也並不在你的專案目錄下,那麼這個檔案仍然可以被使用,但是一旦你將專案拷貝到了別的地方時,這個檔案就會找不到了。因為這個檔案在你的電腦中,而不在你的專案中。
所以:建議✔️使用【copy item if needed】
四、最後總結:
1、建議
所以:建議✔️使用【Create groups】
所以:不建議❌使用【Create folder references】
所以:建議✔️使用【copy item if needed】
2、 如圖:
參考連結:Create groups 與 Create folder references
作者:iOS開發學習與分享zwj
連結:https://www.jianshu.com/p/7bdf90d9f966
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯絡作者獲得授權並註明出處。