UIImage *image = [UIImage imageNamed:@"chat_send_nor"];
// 1.2 拿到image的尺寸
CGFloat imageWidth = image.size.width;
CGFloat imageHeight = image.size.height;
###方式一
UIImage *resizableImage = [image resizableImageWithCapInsets:UIEdgeInsetsMake(imageHeight * 0.5, imageWidth * 0.5, imageHeight * 0.5 -1, imageWidth * 0.5 - 1) resizingMode:UIImageResizingModeTile];
[self.button setBackgroundImage:image forState:UIControlStateNormal];
###方式二
/*
右边需要保护的区域 = 图片的width - leftCapWidth - 1
底部需要保护的区域 = height - topCapHeight - 1
*/
UIImage *resizableImage = [image stretchableImageWithLeftCapWidth:imageWidth * 0.5 topCapHeight:imageHeight * 0.5];
[self.button setBackgroundImage:image forState:UIControlStateNormal];
方式三 在Assets.xcassets里面设置就可以
如果你非得用代码的话,我建议给UIImage添加一个分类
步骤如下
第一步:
第二步:
第三步:在.h文件提供一个方法出来
第四步:在.m文件中实现
使用方法:
导入头文件 类方法调用传递一张图片名字就OK
网友评论