在我使用podspec加载资源之前:
s.resources = ["MyFramework/Resources/**/*.{xib, png, jpeg, jpg}"]
现在我尝试用以下方法完成同样的工作:
s.resource_bundles = {'Resources' => ['MyFramework/Resources/**/*.{xib, png, jpeg, jpg}']}
它们似乎被复制,因为我可以在下面找到它们:
Pods\Development Pods\MyFramework\Resources
但是当我尝试加载它们时:
UIImage *testImage = [UIImage imageNamed:@"testImage.jpeg"];
testImage
始终为零。
我还试图找出是否存在可访问的捆绑包,因此我需要从创建的捆绑包中加载图像,但是:
NSArray *bundles = [[NSBundle mainBundle] pathsForResourcesOfType:@"bundle" inDirectory:nil];
显示没有通过Cocoapods创建捆绑包。
我究竟如何访问这些资源?
答案 0 :(得分:0)
资源被放入名为“资源”的包中。
s.resource_bundles = {'Resources' => ['MyFramework/Resources/**/*.{xib, png, jpeg, jpg}']}
您可以通过以下代码访问该包
NSBundle *bundle = [NSBundle bundleWithPath:[[NSBundle mainBundle]
pathForResource:@"Resources"
ofType:@"bundle"]];
s.resource_bundles
中的密钥是捆绑名称。
注意: 我有一些由以下代码列出的包。您的广告连播设置中可能还有其他问题。 NSArray * bundles = [[NSBundle mainBundle] pathsForResourcesOfType:@" bundle" inDirectory:无];
答案 1 :(得分:0)
要从捆绑中加载图像,请使用:
UIImage *testImage = [UIImage imageNamed:@"Resources.bundle/testImage.jpeg"];