1. bundle 的介紹
bundle在OS X 和iOS中一種提供軟件的便利方式。bundle對(duì)最終用戶(hù)提供了簡(jiǎn)單地交互,同事提供了開(kāi)發(fā)的支持。
簡(jiǎn)單點(diǎn)說(shuō),bundle就是一個(gè)目錄,其中包含了程序中會(huì)用到的資源,如圖像,聲音,編譯好的代碼活nib文件等。
Cocoa提供了NSBundle類(lèi)。
2. bundle的優(yōu)點(diǎn):
1.因?yàn)閎undle在目錄結(jié)構(gòu)中的層次結(jié)構(gòu),一個(gè)bundle只包含資源文件。因此,你可以使用相同的文件接口像打開(kāi)其他類(lèi)型文件一樣打開(kāi)bundle文件
2. bundle的結(jié)構(gòu)使它可以很容易的支持本地化,你可以非常容易的添加或者移除本地資源
3.bundle可以保持在多種格式的的系統(tǒng)中, 如HFS,HFS+和AFP的multiple fork formats;UFS,SMB,NFS 的single-fork formats
3. 創(chuàng)建bundle
3.1 簡(jiǎn)單地創(chuàng)建bundle
1 創(chuàng)建一個(gè)文件夾
2 將該文件夾重命名name.bundle
這樣就創(chuàng)建了bundle,這樣創(chuàng)建之后可以使用路徑(name.bundle/xxxx)或者使用NSBundle來(lái)獲取到資源的路徑,但是當(dāng)文件有關(guān)聯(lián)如html時(shí)不能加載關(guān)聯(lián)文件。
3.2 通過(guò)Xcode創(chuàng)建Bundle
1. 在Xcode中創(chuàng)建一個(gè)bundle的工程
2. 添加需要的資源文件,編譯,得到資源文件
這是bundle中的內(nèi)容有:Info.plist, Resources等。
但是這樣制作對(duì)資源文件分組不知道如何來(lái)做?
3.3 ?bundle中的圖片
iOS 創(chuàng)建Bundle時(shí)放入的圖片資源(.png)在默認(rèn)配置下會(huì)被轉(zhuǎn)為.tiff格式,使用的時(shí)候找不到。因?yàn)樵趇OS中創(chuàng)建bundle時(shí)會(huì)用一個(gè)“hack”,為了使所有的運(yùn)行需要更改一個(gè)配置。找到bundle的工程,修改:
Buld Settings > COMBINE_HIDPI_IMAGES and set toNO
之后在運(yùn)行,可以看到圖片正常了。