xcode5(iOS7)新特性-asset catalog与image slicing

来源:互联网 发布:上外翻译总公司 知乎 编辑:程序博客网 时间:2024/06/05 15:25

ios7 (xcode5)新特性-asset catalog与image slicing


Asset catalog是有一系列的图片,图标,启动画面等组成的。
当创建Xcode5工程时候会常见一个asset catalog,名字为Images.xcassets。
Asset catalog在磁盘中是一个目录。目录中除了包含图片外,还包含一个json文件,如下图所示:


App icons 和launch images
Images.xcassets 中包含AppIcon和LaunchImage。每一个项都可以设置deployment target以及尺寸大小。


自定义 imagesets
我们可以在catalog中添加自定义的ImageSet, 这样我们可以为同一个图片提供不同尺寸。
添加方法为:选中Images.xcassets,然后右键弹出菜单,选择New Image Set。


以下是我们添加的资源


Xcode catalog中的资源使用很简单,就是使用 UIImage:imageNamed::

UIImage *image = [UIImage imageNamed:@"Australia"];

 



Image Slicing
Asset Catalog的意义在于为工程中的图片提供了一个存储信息的地方,不仅可以描述资源对应的设备,资源的版本和更新信息等,更重要的在于可以为Image Slicing服务。所谓Image Slicing,相当于一个可视化的resizableImageWithCapInsets:resizingMode:,可以用于指定在图片缩放时用来填充的像素。在资源目录中选择要slicing的图片,点击图片界面右下方的Show Slicing按钮,在想要设定切片的图片上点击Start Slicing,将出现左中右(或者上中下)三条可以拖动的指示线,通过拖动它们来设定实际的缩放范围。

在左侧线(或者上方线)和中间线之间的像素将在缩放时被填充,在中间线和右侧线(或者下方线)之间的像素将被隐藏。比如上面的例子,实际运行中如果对这张图片进行拉伸的话,会是下面的样子:

Image Slicing可以帮助开发者用可视化的方式完成resizable image,之后通过拖拖线就可以完成sliced image,而不必再写代码,也不用再一次次尝试输入的insets合不合适了。slicing可缩放的图片大量用于UI中可以节省打包的占用空间,而在Xcode 5中引入和加强图片资源管理的目的,很大一部分是为了配合SpriteKit将游戏引擎加入到SDK中,并将Xcode逐渐打造为一个全面的IDE工具。


[原文: http://www.devdiv.com/iOS_iPhone-ios_xcode_asset_catalog_image_slicing-thread-206748-1-1.html]

0 0
原创粉丝点击