獲取IOS應用的子目錄


在開發IOS應用時,我們經常需要將素材分類,並放入相應地子目錄中。

在開發代碼時,需要訪問這些素材時,就需要獲取對應的子目錄路徑。那么如何獲取呢?

獲取應用路徑

首先,要找到應用所在的路徑。

NSString *bundlePath = [[NSBundle mainBundle] bundlePath];

獲取子目錄路徑

假設有一個子目錄名字叫做images,那么可以按照下面的方法獲取其路徑。

NSString *imagePath = [bundlePath stringByAppendingPathComponent:@"images"];

找到這個路徑就OK了,從這里開始,你就可以為所欲為了,比如遍歷子文件夾中所欲的文件等。

別高興太早

即使有了上面的代碼,你也不一定會成功,為什么呢?因為IOS應用默認的文件組織結構是平坦(flat)模式,也就是沒有子目錄!你在Xcode中可以看到很多目錄,但是生成的文件中卻沒有子目錄。導致上面的代碼失效。怎么辦?

  1. 將你要添加的子目錄拖拽到XCode中(或者右鍵單擊工程選擇-添加文件到工程),
  2. 在彈出的對話框中要選擇 "Create Folder References for any added folders",切記!

如果我的子文件夾已經添加到了工程中,但是沒有選擇"Create Folder References for any added folders"怎么辦?

沒關系,直接刪除他,刪除的時候選擇Remove References. 不要Move to Trash,然后重新添加一按照上面的步驟添加一次即可。

另外一個方法是在Build Parse中的 Copy Bundle Resources選項下設置。如下圖所示,把要copy的子目錄添加進去即可。

不同顏色的文件夾

在XCode中,有兩種顏色的文件夾,一種是黃色,一種是藍色,只有藍色得文件夾才會被copy到app目錄中,黃色的文件夾只是用來組織文件的,並不代表應用的最終結構!

Happy Coding!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM