iOS基础篇

pod私有化,在组件中包含*.xcassets资源时需要做什么

2019-01-24  本文已影响0人  无边jade

在百度上搜索了上百条信息,我是真的要吐槽一下,真的搜不到呀,下面的文章记录一下,以防以后忘记了!

这里只是针对这个问题做一个解释,如有问题,请留下宝贵意见:

1、将.xcassets文件放至'目录/Assets/*.xcassets'下

2、需要在*.podspec文件中加入如下代码

s.resource_bundle = {
  'AAA' => ['目录/Assets/*.xcassets'] #AAA为生成boudle的名称,随便起,记下,下面要用
}

3、在需要引入*.xcassets中的图片资源时,调用如下方法:

UIImage *img = [self getImageWithBoudleName:@"AAA" imgName:@"图片名称"];

- (UIImage *)getImageWithBoudleName:(NSString *)boudleName imgName:(NSString *)imgName {
NSBundle *bundle = [NSBundle bundleForClass:[self class]];
NSURL *url = [bundle URLForResource:boudleName withExtension:@"bundle"];
NSBundle *targetBundle = [NSBundle bundleWithURL:url];
UIImage *image = [UIImage imageNamed:imgName
                            inBundle:targetBundle
       compatibleWithTraitCollection:nil];
return image;
}

特别鸣谢

上一篇下一篇

猜你喜欢

热点阅读