Assets.xcassets的使用
先介绍下Asset Catalog,Asset Catalog是Xcode5引入的一个新的图片管理方式,有几个好处:
1.自动管理图片,如@1x,@2x图片,使用的时候使用Asset 名字即可
2.管理应用的Icon和Default图片,这个挺方便的,可以完全抛开以前规范命名如Icon.png,Icon@2x.png,Xcode会自动识别尺寸然后匹配进去
3.个人觉得方便模块图片管理,可以针对模块建立Component1.xcassets,在这个Category中去建立新的Image set
4.可以可视化管理图片拉伸,从而抛弃到处使用resizeImage...来获取拉伸图片
示例代码如下:
- // 使用原比例图片
- UIImage *image = [UIImage imageNamed:@"darc_component_golden_egg"];
- UIImageView *imageview = [[UIImageView alloc] initWithImage:image];
- imageview.frame = CGRectMake(50, 50, image.size.width, image.size.height);
- [self.view addSubview:imageview];
- [imageview release];
- // 使用拉伸图片
- image = [UIImage imageNamed:@"darc_component_cell_bottom"];
- imageview = [[UIImageView alloc] initWithImage:image];
- imageview.frame = CGRectMake(50, 150, 200,200);
- [self.view addSubview:imageview];
- [imageview release];
得到的效果图:
创建一个新的Asset Catalog:
方法:使用 File - new - File - Resource - Asset Catalog,会需要输入名字和选择Target
建立完毕后单击,文档会将整个操作区域从左到右分为三部分,SetList, Set Viewer, Set attributes inspector
在SetList区域左下角会有新增(+)和删除(-)按钮,实际在区域内右击也会有对应选项,
New Image Set:图片夹,这个常用
New App Icon:用于图标管理
New Lauch Image: 启动图
New Folder:新文件夹,支持在文件夹嵌套,具体自己研究研究
使用New Image Set建立一个新的图片夹,如下图中的darc_component_temp,在属性栏中可以选择设备的类型,根据设备的不同,会有多个占位图片
添加图片的方式可以使用导入,如下图
还可以更加简洁的直接将图片拖入到占位符位置,Xcode会自动根据图片尺寸放入对应的占位符中.
配置拉伸图片:
拉伸图片支持水平,垂直,水平和垂直同时拉伸三种,操作步骤如下,单击Image Set,选择 Show Slice进入下一步
如下图所示,切换水平或者垂直可以选择对应的图片,在属性编辑栏中切换.
步骤如上图所示,具体属性解释如下所示:总共三条线,左边为左句柄,内句柄,右句柄(如果是垂直则为上,内,下切片句柄),
左边到左句柄,右句柄到右边部分为不变部分
左句柄到内句柄为填充样式,将来就会用这部分去填充其他扩充部分
内句柄到片句柄部分为可扩充部分,随着拉伸或者缩小,这部分将会被填充样式填充
使用一个实际例子如下:我将重复区域变小,将拉伸区域变大,于是就得到了右图,那就很直观的知道结果了!
参考文档:
https://developer.apple.com/library/ios/recipes/xcode_help-image_catalog-1.0/_index.html