2012-03-08 76 views
0

我一直在使用pathForResource一段時間,但突然放棄了我。 我在我的資源中添加了一個名爲untitled.objuntitled.mtl的額外文件。NSBundle返回NULL

copy bundle resources

與以下兩行代碼:

NSString *path = [[NSBundle mainBundle] pathForResource:@"untitled" ofType:@"obj"]; 
NSLog(@"thePath = %@", path); 

所有其他* .obj文件做工精細,除了untitled.obj

NSLog的輸出是什麼,當我使用該文件,所以我假設它無法找到它出於某種原因。

enter image description here

資源也位於該溫度。仿真庫:

enter image description here

+0

你是如何添加新文件的,它是否包含在你的目標中?在項目中選擇文件並在右側檢查檢查員 - 是否檢查了目標? – jrturton 2012-03-08 09:12:39

+0

@jrturton,這兩個文件都在目標的目標成員中。與其他所有* .obj文件一樣,將文件放在目錄中,並將其拖入文件夾中,其他人位於其中。 – JavaCake 2012-03-08 10:51:35

+0

新的更新。我無法找到的資源也位於模擬目錄中,因此現在它的意義更小。 – JavaCake 2012-03-08 12:26:24

回答

1

從您的設備中刪除應用程序,並重置模擬器中的內容和設置。同時刪除項目的派生數據。當你這樣做後,再次測試,它應該工作。

+0

我刪除了應用程序,重置內容和設置。刪除了應用程序模擬文件。並再次嘗試。結果仍然相同。 「衍生數據」是什麼意思?謝謝! – JavaCake 2012-03-08 17:22:54

+1

轉到**組織者**,打開**項目**選項卡並選擇您的項目。如果它在前面,你會看到** Derived Data **和一個** Delete **按鈕。 – sch 2012-03-08 17:25:22

-1

我認爲你需要的.plist文件。你有Bundle的名字和標識符。

+0

我不認爲我完全理解你。我已經有一個包名稱/標識符的* .plist文件。 – JavaCake 2012-03-08 08:37:34

+0

不在您的包資源 – 2012-03-08 08:39:58

+0

不應該是必需的,因爲我的目標已經初始化* .plist文件。 – JavaCake 2012-03-08 08:49:45

0

一切看起來都對我很正確。你有沒有檢查過你沒有意外地用尾部空格或其他不可見字符命名文件?嘗試命名它完全不同的東西(包括更改擴展名),然後重新命名它。