[[nsbundle mainbundle] pathforresource:@"
somefilename
" oftype:@"
yourfileextension
"];
[yourviewcontroller initwithnibname:"
yourviewcontroller
" bundle:nil];
可是你知道這裡的bundle到底是個啥玩意呢?!
bundle簡單地講,就是乙個內部結構按照標準規則組織的特殊目錄
現在我們已經知道了,原來我們開發的應用程式,最後都會成為乙個bundle,那麼就不難理解為什麼很多資源檔案載入大多是通過bundle來進行的了,從bundle進行檔案載入實際就是通過應用自己所在的資料夾進行載入。
不過緊接著我們又會產生好幾個疑問:
1 為什麼不直接使用檔案路徑的方式來讀取資源檔案呢?
2 為什麼還會存在pathforresource:oftype:這個方法,難道說我們在開發的時候還不能確定這些檔案在哪兒嗎?
而bundle對ios開發者來講,最大的方便就是可以非常簡單地讓自己的應用國際化,在不同的語言不同的地區,載入不同的資源檔案,顯示不同的語言文字,而實現這些只需要我們嚴格按照bundle的要求進行資源檔案的存放即可,而不需要寫大量**判斷地區語言。遵循的方法也很簡單,只需要我們建立對應的"本地化資料夾"即可,例如我們要同時讓"pic.png"在中文和英文下顯示不同的內容,只需要建立兩個本地化資料夾zh.lproj和en.lproj,分別放入同名但內容不同的"pic.png"即可。
關於如何讓自己的應用國際化的具體方法,將在之後的文章進行描述。
IOS程式國際化
1.2 新建後,可以看到工作目錄結構檔案如下,單擊infoplist.strings,檢視右邊的屬性,在localization欄新增語言。1.3 新增完成後開啟對應語言檔案,比如english的新增 cfbundledisplayname china chinese檔案新增 cfbundledis...
IOS程式國際化
1.2 新建後,可以看到工作目錄結構檔案如下,單擊infoplist.strings,檢視右邊的屬性,在localization欄新增語言。1.3 新增完成後開啟對應語言檔案,比如english的新增 cfbundledisplayname china chinese檔案新增 cfbundledis...
iOS語言國際化
參考 語言國際化 根據系統不同的語言自動切換 xcode6.2 一.在不同語言下工程名會變成對應的語言名 步驟 新建乙個singleview工程 再新建infoplist檔案 注意檔名不能改變還有大小寫 然後新增語言 經過以上,會出現 在各自的語言資料夾中分別新增 cfbundledisplayna...