项目环境:首页商品瀑布流图片展示。
问题:使用瀑布流展示商品,网络获取图片时,占位图被拉伸。
解决:将logo重新绘制到当前范围的中心,并生成图片,作为占位图使用。
/**
将占位图片绘制在当前图片中央
@param image image 居中的logo图片
@param size size 当前需要施画的范围
@param backgroundColor backgroundColor 背景画布颜色
@return 绘制好的logo居中图片
*/
- (UIImage *)drawImage:(UIImage*)image
size:(CGSize)size
backgroundColor:(UIColor *)backgroundColor
{
UIGraphicsBeginImageContextWithOptions(size,0, [UIScreenmainScreen].scale);
[backgroundColor set];
UIRectFill(CGRectMake(0,0, size.width, size.height));
CGFloat imageX = (size.width /2) - (image.size.width /2);
CGFloat imageY = (size.height /2) - (image.size.height /2);
[image drawInRect:CGRectMake(imageX, imageY, image.size.width, image.size.height)];
UIImage *resImage =UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return resImage;
}