- 方式一
UIImage *image = [UIImage imageNamed:@"chat_send_nor"];
// 作用: 根據(jù)傳入需要保護的區(qū)域返回一張受保護的圖片
UIEdgeInsets edgeInsets = UIEdgeInsetsMake(image.size.height * 0.5, image.size.width * 0.5, image.size.height * 0.5 -1, image.size.width * 0.5 -1);
UIImage *protectImage = [image resizableImageWithCapInsets:edgeInsets];
self.imageView.image = protectImage;
- 方式二
UIImage *image = [UIImage imageNamed:@"chat_send_nor"];
UIEdgeInsets edgeInsets = UIEdgeInsetsMake(image.size.height * 0.5, image.size.width * 0.5, image.size.height * 0.5 -1, image.size.width * 0.5 -1);
/*
UIImageResizingModeTile, 以平鋪的方式進行拉伸
UIImageResizingModeStretch, 直接拉伸平鋪
*/
UIImage *protectImage = [image resizableImageWithCapInsets:edgeInsets resizingMode:UIImageResizingModeTile];
self.imageView.image = protectImage;
- 方式三
UIImage *image = [UIImage imageNamed:@"chat_send_nor"];
// rightCapWidth = width - leftCapWidth - 1
// bottomCapWidth = height - topCapWidth - 1
UIImage *protectImage = [image stretchableImageWithLeftCapWidth:image.size.width * 0.5 topCapHeight:image.size.height *0.5];
self.imageView.image = protectImage;
- 方式四
// 為UIImage添加一個分類
// UIImage+XMGExtention.h
#import <UIKit/UIKit.h>
@interface UIImage (XMGExtention)
/**
* 返回一張受保護的圖片
*
* @param imageName 圖片的名稱
*
* @return 受保護的圖片
*/
+ (instancetype)resizableImageWithImageName:(NSString *)imageName;
@end
// UIImage+XMGExtention.m
#import "UIImage+XMGExtention.h"
@implementation UIImage (XMGExtention)
+(instancetype)resizableImageWithImageName:(NSString *)imageName{
// 創(chuàng)建圖片對象
UIImage *image = [UIImage imageNamed:imageName];
// 圖片的尺寸
CGFloat imageWidth = image.size.width * 0.5;
CGFloat imageHeight = image.size.height * 0.5;
return [image stretchableImageWithLeftCapWidth:imageWidth topCapHeight:imageHeight];
}
@end
UIImage *image = [UIImage resizableImageWithImageName:@"chat_send_nor"];
self.imageView.image = image;
-
方式五