這是framework內部的資源,跟其他都沒有關係。但是framework不能單獨存在,必須要放在某個「主程式」中才能起作用。bundle引數如果不傳,那麼預設是mainbundle,這種情況路徑就不對了。這種情況下,可以用下面這個api來獲得bundle引數。
//獲取bundle引數
nsbundle *bundle = [nsbundle bundleforclass:self.class
];
//讀uistoryboard
uistoryboard *storyboard =[uistoryboard storyboardwithname:@「storyboardname」 bundle:bundle];
//讀uiimage
uiimage *image = [uiimage imagenamed:@"
icon_back_gray
"inbundle:bundle compatiblewithtraitcollection:nil];
//檔案路徑
nsstring* htmlpath = [bundle pathforresource:@"
index
" oftype:@"
html
"];
同樣也是利用bundle引數來讀取,class選擇framework中某個匯出的class就可以了。
//獲取bundle引數,zafinanceframeworkmanager是framework中介面類
nsbundle *bundle = [nsbundle bundleforclass:[zafinanceframeworkmanager class]];
這個和在主程式中讀自己的一樣,不需要bundle引數,一定要傳的話,就傳nil或者[nsbundle mainbundle]
同樣也是利用bundle引數來讀取,class選擇目標framework中某個匯出的class就可以了。
小結在單體程式中,nsbundle這個引數不需要管,全部傳nil或者是預設的[nsbundle mainbundle]就可以了。
引入了framework之後,就需要nsbundle這個引數來區分資源所在的模組。確定nsbundle比較簡單的方法是用下面這個api,其中的class只要選擇資源所在的framework中的某個class就可以了。獲取到bundle後,通過bundle獲取資源檔案用法一致。
+ (nsbundle *)bundleforclass:(class)aclass;
讀取資源檔案
資源檔案在存放彈出資訊很有用,以下是讀資源檔案的簡單 dim rm as resourcemanager new resourcemanager readresx.message system.reflection.assembly.getexecutingassembly dim ci as cu...
從framework裡面讀資源檔案
這是framework內部的資源,跟其他都沒有關係。但是framework不能單獨存在,必須要放在某個 主程式 中才能起作用。bundle引數如果不傳,那麼預設是mainbundle,這種情況路徑就不對了。這種情況下,可以用下面這個api來獲得bundle引數。nsbundle bundleforc...
c 讀取資源檔案
全域性資源檔案 getglobalresourceobject string param1,string param2 讀取全域性資源檔案的方法 引數說明 param1 資源檔案類名 即資源檔名,不帶resx param2 鍵值名 區域性資源檔案 getlocalresourceobject str...