看到小码哥以前的视频教学,想着整理出来,为新手们提供一个参考,示例如下:
在遇到IM界面开发的时候,设计给了一张图(图一)
需求:拉伸图片,并且不变形
问题:图片变形严重
如果直接把图片放在ImageView或Button上时,你会发现拉伸的非常严重,在这里我随便给个高度,看看拉伸效果(图二)
需求和遇到的问题明确了,直接上代码
UIImage *image=[UIImage imageNamed:@"userFeedBack.png"];
//1 获取图片的宽高
CGFloatimageW=image.size.width;
CGFloatimageH=image.size.height;
//2 创建可以拉伸的图片
// 设置一个保护区域,设置过的区域将不被拉伸,宽高各减一 也就是拉伸中间区域
// resizingMode 0 平铺 1拉伸
UIImage*resizingImage=[imageresizableImageWithCapInsets:UIEdgeInsetsMake(imageH*0.5, imageW*0.5,imageH*0.5-1,imageW *0.5-1)resizingMode:1];
//3 设置气泡图
self.backImage.image=resizingImage;
效果图
还没理解被拉伸是哪个地方可以看图四
被拉伸的地方是中间的小长方形,保护区域可以理解为四个矩形对图片进行分割,剩下的区域就是拉伸区域。