1、- (UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets resizingMode:(UIImageResizingMode)resizingMode NS_AVAILABLE_IOS(6_0); // the interior is resized according to the resizingMode
复用某个区域
typedef NS_ENUM(NSInteger, UIImageResizingMode) {
UIImageResizingModeTile,
UIImageResizingModeStretch,
};
由文档 可知,一个是 填充 一个 是拉伸.
2、- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight;
从某点开始复用
使用:
// UIImage* img = [[UIImage imageNamed:@"bg"] stretchableImageWithLeftCapWidth:80 topCapHeight:20];
UIImage* img =[[UIImage imageNamed:@"bg"] resizableImageWithCapInsets:UIEdgeInsetsMake(20, 80, 20, 10) resizingMode:UIImageResizingModeTile];
UIImageView* imageV = [[UIImageView alloc] initWithFrame:CGRectMake(0, 200, 300, 200)];
imageV.image = img;
[self.view addSubview:imageV];