这个情况是这样的,当我们进行网络加载后,图片已经缓存啦,后台传回来的图片尺寸突然改了,此时,如果我们不做任何动作的话,它这样就会显示之前的图片尺寸或图片内容。
通常我们处理的方法,(缓存的key通常是根据URL 来判断的)
- 后台改:改尺寸的同时,将链接直接改啦,这样我们省事。
- 我们改:对其新的尺寸进行调整。
此处,我想的是当然对其新的尺寸进行修改调整,但是思索一番,觉的一种情况还可行,就是在我们对URL 的key 进行判断的时候,同时加上一个对高和宽的判断,如果都一致才直接从缓存中获取,但是这样太麻烦啦,每次都得获取到图片后再判断,那还不如直接获取网络图片啊。
暂时没有好的方法,个人觉的假如图片尺寸真的要改,最好的还是直接让后台改个链接方便。
PS :获取图片的尺寸
获取本地图片的大小
// path 图片的本地路径
CGSize size = [UIImage imageWithContentsOfFile:path].size;
// test 图片名称
CGSize size = [UIImage imageNamed:@"test"].size
不画的情况下改变尺寸
// CGSizeApplyAffineTransform
// CGAffineTransformMakeScale
CGSize transformSize = CGSizeApplyAffineTransform(image.size, CGAffineTransformMakeScale(0.5, 0.5));