我已经创建了一个创建圆的方法,当我在同一个类中使用此方法时,该方法正常工作但是当我将其中的某个类别显示为
时#import "UIImage+circle.h"
@implementation UIImage (circle)
- (UIImage * ) makeImageofColor:(UIColor *)color
{
UIBezierPath *circle = [UIBezierPath
bezierPathWithOvalInRect:CGRectMake(0, 0, 15, 15)];
UIGraphicsBeginImageContext(CGSizeMake(15, 15));
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSetFillColorWithColor(context, [UIColor greenColor].CGColor);
[circle fill];
UIImage *bezierImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return bezierImage;
}
@end
并在ViewController.m中
- (void)viewDidLoad
{
[super viewDidLoad];
UIImage *img;
self.ImageView1.image=[img makeImageofColor:[UIColor greenColor]];
}
答案 0 :(得分:2)
这是参考问题,只需替换实例方法声明
- (UIImage * ) makeImageofColor:(UIColor *)color
使用类方法声明
+ (UIImage * ) makeImageofColor:(UIColor *)color
并致电
self.ImageView1.image=[UIImage makeImageofColor:[UIColor greenColor]];
答案 1 :(得分:0)
在“UIImage + circle.h”文件中声明您的类别方法
- (UIImage * ) makeImageofColor:(UIColor *)color;
并在“ ViewController.m ”中导入“ UIImage + circle.h ”
这将解决您的问题。