怎么调整UIImage的大小?
这是我调整UIImage大小用的代码,但是不行;UIImage*cellImage=[UIImageimageNamed:@"warning.png"];CGRectcr...
这是我调整UIImage大小用的代码,但是不行;UIImage *cellImage = [UIImage imageNamed:@"warning.png"];CGRect cropRect = CGRectMake(0.0, 0.0, 12.0, 12.0);CGImageRef croppedImage = CGImageCreateWithImageInRect([cellImage CGImage], cropRect);UIImageView *myImageView = [[UIImageView alloc] initWithFrame:cropRect];[myImageView setImage:[UIImage imageWithCGImage:croppedImage]]; CGImageRelease(croppedImage);这个代码有什么问题吗?
展开
2个回答
展开全部
UIImage类没有提供修改frame的方法,我们需要扩展UIImage类自己实现
@interface UIImage (Scale)
-(UIImage *)TransformtoSize:(CGSize)Newsize;
@end
//UIImage.m
#import "UIImage.h"
@implementation UIImage (Scale)
- (UIImage *)scaleToSize:(UIImage *)img size:(CGSize)newsize{
// 创建一个bitmap的context
// 并把它设置成为当前正在使用的context
UIGraphicsBeginImageContext(newsize);
// 绘制改变大小的图片
[UIImage drawInRect:CGRectMake(0, 0, newsize.width, newsize.height)];
// 从当前context中创建一个改变大小后的图片
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
// 使当前的context出堆栈
UIGraphicsEndImageContext();
// 返回新的改变大小后的图片
return scaledImage;
}
@interface UIImage (Scale)
-(UIImage *)TransformtoSize:(CGSize)Newsize;
@end
//UIImage.m
#import "UIImage.h"
@implementation UIImage (Scale)
- (UIImage *)scaleToSize:(UIImage *)img size:(CGSize)newsize{
// 创建一个bitmap的context
// 并把它设置成为当前正在使用的context
UIGraphicsBeginImageContext(newsize);
// 绘制改变大小的图片
[UIImage drawInRect:CGRectMake(0, 0, newsize.width, newsize.height)];
// 从当前context中创建一个改变大小后的图片
UIImage* scaledImage = UIGraphicsGetImageFromCurrentImageContext();
// 使当前的context出堆栈
UIGraphicsEndImageContext();
// 返回新的改变大小后的图片
return scaledImage;
}
2019-03-24 · IT、电竞电商、设计、动漫专业对口升学
关注
展开全部
UIImage类没有提供修改frame的方法,我们需要扩展UIImage类自己实现
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询