擷取圖片路徑為空白的問題,擷取圖片路徑問題

來源:互聯網
上載者:User

擷取圖片路徑為空白的問題,擷取圖片路徑問題
_1.問題描述:_

在使用
NSString *path = [[NSBundle mainBundle]pathForResource:picName ofType:nil];
方法擷取圖片絕對路徑時,擷取到路徑為 null, 即路徑擷取失敗,運行提示類似如下異常:
【Could not load the <圖片名字> image referenced from a nib in the bundle with identifier <項目名字>
導致後來通過圖片路徑將圖片添加到數組中失敗,提示無法添加Null 物件.

_2.問題分析:_

原文:http://blog.csdn.net/u012945598/article/details/17955215
問題出在將圖片匯入項目的步驟.將圖片檔案夾拖入 Xcode 時,會有兩個Added folders選項:

Create groups
Create folder references
如果選擇了第一種方式添加了一個檔案,我們會發現被添加進來的檔案,檔案夾是黃色的
選擇了第二種方式添加進來的檔案的檔案夾是藍色的

那麼兩種方式有什麼區別呢?

1.使用Create groups,為任何新增加的檔案夾建立,組的概念也許我們並不陌生,我們在項目中完全可以手動添加一個groups(右鍵點擊選擇New Group),但是手動添加的groups實際上並不會存在於項目的目錄中,你會發現被添加進groups中的檔案仍在位於它原來所在的位置,但是從外部引入進來的groups並不會如此,正如我們剛才那樣。groups一旦被建立或添加,都是以黃色檔案夾的形式存在的,當你想要使用檔案夾中的某個類的標頭檔時,你可以直接添加它的引用,例如
'#include xxx.h
因為groups下的cpp檔案是會被編譯的。

2.使用Create folder references 方法只是將檔案單純的建立了引用,這些檔案不會被編譯,所以在使用的時候需要加入其路徑,比如在我們想要使用中的myScripts檔案夾下面有某個標頭檔,則需要按照下面的方法添加聲明:
'#include myScripts/xxx.h
否則編譯器就會告訴你找不到xxx.h檔案。

這就是項目中黃色檔案夾與藍色檔案夾的區別以及使用方法

至於Destination對應選項,當你選擇了這個選項時,如果你想要引入的檔案不在你的專案檔的目錄下,Xcode則會自動將這個檔案複製一份拷貝到你的項目的目錄下
如果你不選擇,並且這個檔案也並不在你的項目目錄下,那麼這個檔案仍然可以被使用,但是一旦你將項目拷貝到了別的地方時,這個檔案就會找不到了。因為這個檔案在你的電腦中,而不在你的項目中。

_3.解決方案:_

添加圖片檔案時,選擇第一個選項Crest groups, 將其進行編譯

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.