iOS培训知识――UIImage内容

蓝鸥iOS培训推荐:有两天没和大家聊了,这两天都忙,一直没有和大家分享新的内容,那么也是在准备新的内容好供大家学习,今天就和大家分享一下关于UIImage几个知识点:包括属性、初始化方法介绍,来吧!大家一起学习一下!

一、首先要讲的UIImage的size,scale属性:

一套1倍图,一套图已@2x命名的二倍图。这样当我们的程序运行在retina屏幕的时候系统就会自动的去加载@2x的图片,它的size将和一倍图加载进来的size相等,但是scale却置为2。

二、接下来是UIImage的几种初始化方法:

1、imageNamed:方法

指的是UIImage的一个类方法,它做的事情比我们看到的要稍微多一些。加载流程如下:

1)系统回去检查系统缓存中是否含有该名字的图像,如果有的话,那么直接返回去。

2)如果系统缓存中没有该名字的图像,那么就会先加载到缓存中,然后在返回该对象。

如果大家跟着我走的话,那么从上面的操作中就会看到,系统会缓存我们使用imageNamed:方法加载的图像时候,系统会自动帮我们缓存。这种机制适合于那种频繁用到界面贴图累的加载,但如果我们需要短时间内频繁的加载一些一次性的图像的话,最好不要使用这种方法。

2、imageWithContentsOfFile:和initWithContentsOfFile:方法

这节点的方法和上面出现的方法是一样的,都是完成从文件加载图像的功能。但是不会经过系统缓存,直接从文件系统中加载并返回。

大家要注意:当收到内存警告的时候,系统可能会将UIImage内部的存储图像的内存释放,下一次需要绘制的时候会加载。

3、imageWithCGImage:scale:orientation:方法

用来使用一个CGImageRef创建UIImage,创建时可指定方法倍数以及旋转方向。当scale设置为1的时候,新创建的图像将和原图像尺寸是一样的,而orientaion则可以指定新的图像的绘制方向。

三、UIImage的imageOrientation属性:

UIImage有一个imageOrientation的属性,主要作用是控制image的绘制方向,共有以下8中方向:

150245570.jpg默认的方向是UIImageOrientationUp,这8种方向对应的绘制方如上面所示。我们在日常使用中经常会碰到把iPhone相册中的照片导入到windows中,发现方向不对的问题就是与这个属性有关,因为导出照片的时候,写exif中的方向信息时候没有考虑该方向的原因。

今天就先介绍到这,如果有看不懂的地方可以随时沟通,大家相互学习。

你可能感兴趣的:(ios,开发,移动,手游)