iOS SDK开发之图片资源Bundle打包
2021-08-02 本文已影响0人
Lee坚武
iOS SDK开发项目中用到图片资源和xib,storyboatd资源,我们可以将这些资源全部归类到bundle文件中,便于管理。
下面具体步骤如下...
1.创建Bundle资源包
2.新建一个Project
3.选择Bundle,选择第一步创建的WorkSpace(和SDK开发一中的图1的选择一样),这样就创建好了Bundle资源工程,成功创建如下图:
image.png
> 4.重要的配置设置事项:
点击Build Setting,
修改 Base SDK 为 iOS 否则编译无法通过
修改 COMBINE_HIDPI_IMAGES 为 No 否则Bundle中的图片就是tff格式
删除安装路径 Installation Directory 的值。作为资源包,不需要安装
image.png
image.png
image.png
> 5.然后编译一下或者按comand+B编译完成拿bundle文件就可以进行使用操作了
代码如下:
NSString *bundlePath = [[NSBundle mainBundle] pathForResource:@"LWTestBundle" ofType:@"bundle"];
NSBundle *resourceBundle = [NSBundle bundleWithPath:bundlePath];
// VC的nib资源
NSString *bundlePath = [[NSBundle mainBundle] pathForResource:@"LWTestBundle" ofType:@"bundle"];
NSBundle *resourceBundle = [NSBundle bundleWithPath:bundlePath];
UIView *view = [[resourceBundle loadNibNamed:@"LWBundleView" owner:self options:nil]objectAtIndex:0];
[self.view addSubview:view];
// 图片资源
UIImage *img1 = [UIImage imageNamed:@"gaitubao_timg_png" inBundle:resourceBundle compatibleWithTraitCollection:nil];
///或者使用
//UIImage *img2 = [UIImage imageNamed:[resourceBundle pathForResource:@"gaitubao_timg_png" ofType:@"png"]];
///或者
//NSString *imgPath= [bundlePath stringByAppendingPathComponent:@"gaitubao_timg_png.png"];
//UIImage *image_1=[UIImage imageWithContentsOfFile:imgPath];
UIImageView *imgView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 144, self.view.frame.size.width, self.view.frame.size.height - 144)];
///图片资源加载
imgView.image = img1;
[self.view addSubview:imgView];