2
我想創建一個靜態框架,它將使用一些圖像在其視圖中顯示。我通過在sdk項目中添加目標,從XCode創建了一個MyFrameworkBundle.bundle
。在捆綁中添加了所有圖像並創建了捆綁,併爲該目標提供了捆綁標識my.frameworkbundle
。 我現在想取回我的框架,像束以下:NSBundle bundleWithIdentifier爲靜態框架和資源包返回null
NSBundle * mybundleRef = [NSBundle bundleWithIdentifier:@"my.frameworkbundle"];
然後我把這些框架和資源包中的另一個項目,並試圖與上述線路運行功能。它總是返回null。即使我試圖獲取像上面的代碼框架,即:
NSBundle * mybundleRef = [NSBundle bundleWithIdentifier:@"my.framework"];
這也給了我null。但是如果我將這個框架從靜態變爲動態,它總會給我提供正確的包裝。 因爲我打算在Unity中使用它,所以我不想使用動態框架來避免後期處理腳本。
我也試過下面的代碼:
NSString *bundleString =[[NSBundle mainBundle] pathForResource:@"MyFrameworkBundle" ofType:@"bundle"];
NSBundle * PlayCacheBundle = [NSBundle bundleWithPath:bundleString];
,但它給錯誤
沒有合適的圖像發現
系統細節:
- 的Xcode:8.2 .1 周
- 的MacOS:10.12(塞拉利昂)
感謝爲類僅在框架不是資源bundle 'NSBundle * myBundleRef = [NSBundle bundleForClass:[MyFrameworkClass class]];' 'NSLog(@「Bundle Result:%@」,myBundleRef);' 但是作爲回報,它給了我一個NSBundle,項目(我導入框架的項目),而不是我的框架掃。我也嘗試使用這個包來獲取圖像 'UIImage * Imageref = [UIImage imageNamed:@「msg.png」inBundle:myBundleRef compatibleWithTraitCollection:nil];' 它在ImageRef中返回null。 –