iOS图片拉伸填充背景

1、有的时候,需要为view设置背景图,但是美工的切图并不是完整的按照view尺寸进行切图,这时就需要将图片拉伸填充,代码如下:

+ (UIImage *)stretchableWithImageName:(NSString *)imageName{

    UIImage *image = [UIImage imageNamed:imageName];

    // 左端盖宽度
    NSInteger leftCapWidth = image.size.width * 0.5f;
    // 顶端盖高度
    NSInteger topCapHeight = image.size.height * 0.5f;
    // 重新赋值
    return [image stretchableImageWithLeftCapWidth:leftCapWidth topCapHeight:topCapHeight];
}

2、stretchableImageWithLeftCapWidth:topCapHeight:方法是专门用来拉伸图片的,
resizableImageWithCapInsets:也是用来拉伸图片的,参数是一个UIEdgeInsets,用来设定内边距的。
UIImage在拉伸的时候有2种模式,UIImageResizingModeStretch:拉伸模式,通过拉伸UIEdgeInsets指定的矩形区域来填充图片
UIImageResizingModeTile:平铺模式,通过重复显示UIEdgeInsets指定的矩形区域来填充图片
3、 利用平铺模式的时候要注意了,如果所使用的图片比较小,而view的背景比较大时,图片就会使用原有的图片多次填充,所以结果就是view的背景会出现很多个小图片,

你可能感兴趣的:(ios,图片,uiimage)