iOS開發裡的Bundle是什麼

2021-06-26 05:09:42 字數 687 閱讀 5741

bundle簡單地講,就是乙個內部結構按照標準規則組織的特殊目錄

現在我們已經知道了,原來我們開發的應用程式,最後都會成為乙個bundle,那麼就不難理解為什麼很多資源檔案載入大多是通過bundle來進行的了,從bundle進行檔案載入實際就是通過應用自己所在的資料夾進行載入。

不過緊接著我們又會產生好幾個疑問:

1 為什麼不直接使用檔案路徑的方式來讀取資源檔案呢?

2 為什麼還會存在pathforresource:oftype:這個方法,難道說我們在開發的時候還不能確定這些檔案在哪兒嗎?

而bundle對ios開發者來講,最大的方便就是可以非常簡單地讓自己的應用國際化,在不同的語言不同的地區,載入不同的資源檔案,顯示不同的語言文字,而實現這些只需要我們嚴格按照bundle的要求進行資源檔案的存放即可,而不需要寫大量**判斷地區語言。遵循的方法也很簡單,只需要我們建立對應的"本地化資料夾"即可,例如我們要同時讓"pic.png"在中文和英文下顯示不同的內容,只需要建立兩個本地化資料夾zh.lproj和en.lproj,分別放入同名但內容不同的"pic.png"即可。

根據大牛進行補充:

bundle是資源包,裡面包含了幾張該類用到的,打進bundle包的目的一方面是為了資源容易管理,另一方面也是主要方面時為了不和其他資源發生衝突(xcode中資源名字是資源的唯一標識,同名字的資源只能出現一次,而放到bundle包裡可以避免這個潛在的問題)

iOS開發裡的Bundle是個啥玩意?!

初學ios開發的同學,不管是自己寫的,還是貼上的 或多或少都寫過下面的 nsbundle mainbundle pathforresource somefilename oftype yourfileextension yourviewcontroller initwithnibname yourv...

iOS開發裡的Bundle是個啥玩意?!

初學ios開發的同學,不管是自己寫的,還是貼上的 或多或少都寫過下面的 nsbundle mainbundle pathforresource somefilename oftype yourfileextension yourviewcontroller initwithnibname yourv...

iOS開發裡的Bundle是個啥玩意?!

初學ios開發的同學,不管是自己寫的,還是貼上的 或多或少都寫過下面的 nsbundle mainbundle pathforresource somefilename oftype yourfileextension yourviewcontroller initwithnibname yourv...