NSBundle使用

? ? ? ? bundle是一個目錄,其中包含了程序會使用到的資源笤虫,這些資源包含了如圖像、編譯好的代碼祖凫、nib文件等琼蚯。對應(yīng)bundle,cocoa提供了類NSBundle蝙场。這個類的對象凌停,就是定位了程序使用的資源在文件系統(tǒng)里的位置,并可以動態(tài)的加載售滤、或者卸載掉可執(zhí)行代碼。

? ? ? ? 我們的程序是一個bundle台诗,在Finder中完箩,一個應(yīng)用程序看上去和其他文件沒有什么區(qū)別,但是實際上它是一個包含了nib文件拉队,編譯代碼弊知,以及其他資源的目錄。我們把這個目錄叫做程序的main bundle粱快,在 xcode 里秩彤,使用應(yīng)用程序叔扼、框架、或者插件的時候漫雷,xcode 會生成對應(yīng)的資源的目錄包瓜富。 ?

NSBundle *mainBundle = [NSBundle mainBundle];

? ? ? ? [NSBundle mainBundle]是獲得NSBundle的一個單例對象,此單例對象已經(jīng)設(shè)置了默認(rèn)的resourcePath降盹,也就是你的app打包后的路徑与柑。

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

? ? ? ? 查找自定義的bundle。

// 1. 在main bundle中找到特定bundle路徑

? ? NSString*customerBundlePath = [[NSBundle mainBundle] pathForResource:@"Customer" ofType:@"bundle"];

? ? // 2. 載入bundle

? ? NSBundle*customerBundle = [NSBundle bundleWithPath:customerBundlePath];

? ? ? ? 通過bundle加載xib文件蓄坏。

UIView *customerView = [[NSBundle mainBundle] loadNibNamed:@"customerView" owner:self options:nil];

小知識:imageWithContentsOfFile

? ? ? ? 官方文檔說?imageWithContentsOfFile是可以自動區(qū)分@2x?@3x的圖片的价捧,于是就在工程里拖入pic@2x和pic@3x兩張圖片,然后使用如下代碼:

NSString *path = [[NSBundle mainBundle] pathForResource:@"pic" ofType:@"png"];

imageView.image = [UIImage imageWithContentsOfFile:path];

但是并沒有獲取到圖片涡戳,返回的path打印的結(jié)果為空结蟋。是不是獲取的path有問題,然后:

NSString *path = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"pic.png"];

imageView.image = [UIImage imageWithContentsOfFile:path];

果然獲取到了圖片渔彰。

? ? ? ? 應(yīng)該是第一種獲取到的是具體的某一個文件嵌屎,如pic就是pic,所以用pic來獲取圖片的地址胳岂,根本就不存在pic這個圖片编整。而第二種獲取到的是類似文件的相對路徑,具體這里面的@2x乳丰、@3x就是imageWithContentsOfFile自動來匹配了掌测。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市产园,隨后出現(xiàn)的幾起案子汞斧,更是在濱河造成了極大的恐慌,老刑警劉巖什燕,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件粘勒,死亡現(xiàn)場離奇詭異,居然都是意外死亡屎即,警方通過查閱死者的電腦和手機庙睡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來技俐,“玉大人乘陪,你說我怎么就攤上這事〉窭蓿” “怎么了啡邑?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長井赌。 經(jīng)常有香客問我谤逼,道長贵扰,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任流部,我火速辦了婚禮戚绕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘贵涵。我一直安慰自己列肢,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布宾茂。 她就那樣靜靜地躺著瓷马,像睡著了一般。 火紅的嫁衣襯著肌膚如雪跨晴。 梳的紋絲不亂的頭發(fā)上欧聘,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天,我揣著相機與錄音端盆,去河邊找鬼怀骤。 笑死,一個胖子當(dāng)著我的面吹牛焕妙,可吹牛的內(nèi)容都是我干的蒋伦。 我是一名探鬼主播,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼焚鹊,長吁一口氣:“原來是場噩夢啊……” “哼痕届!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起末患,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤研叫,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后璧针,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體嚷炉,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年探橱,在試婚紗的時候發(fā)現(xiàn)自己被綠了申屹。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,673評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡隧膏,死狀恐怖独柑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情私植,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布车酣,位于F島的核電站曲稼,受9級特大地震影響索绪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜贫悄,卻給世界環(huán)境...
    茶點故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一瑞驱、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧窄坦,春花似錦唤反、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至逆趋,卻和暖如春盏阶,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背闻书。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工名斟, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人魄眉。 一個月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓砰盐,卻偏偏與公主長得像,于是被迫代替她去往敵國和親坑律。 傳聞我的和親對象是個殘疾皇子岩梳,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內(nèi)容