2012-06-30 6 views
1

Я пытаюсь вызвать метод ниже, используя [self changeColor]; и получениеНевозможно позвонить по методу

«Нет видимый интерфейс @MyClassViewController заявляет селектор "changeColor"

Я объявлю его так как на .h и .m:

@interface changeColor 

- (UIImage *) changeColor:(UIImage *)image; 

@end 

Я я делаю неправильно? Помогите

------------- Код -------------

- (UIImage *) changeColor:(UIImage *)image 

{ 
    UIGraphicsBeginImageContext(image.size); 

    CGRect contextRect; 
    contextRect.origin.x = 0.0f; 
    contextRect.origin.y = 0.0f; 
    contextRect.size = [image size]; 
    // Retrieve source image and begin image context 
    CGSize itemImageSize = [image size]; 
    CGPoint itemImagePosition; 
    itemImagePosition.x = ceilf((contextRect.size.width - itemImageSize.width)/2); 
    itemImagePosition.y = ceilf((contextRect.size.height - itemImageSize.height)); 

    UIGraphicsBeginImageContext(contextRect.size); 

    CGContextRef c = UIGraphicsGetCurrentContext(); 
    // Setup shadow 
    // Setup transparency layer and clip to mask 
    CGContextBeginTransparencyLayer(c, NULL); 
    CGContextScaleCTM(c, 1.0, -1.0); 
    CGContextClipToMask(c, CGRectMake(itemImagePosition.x, -itemImagePosition.y, itemImageSize.width, -itemImageSize.height), [image CGImage]); 

    CGContextSetRGBFillColor(c, 0, 0, 1, 1); 

    NSLog(@"--------- METHOD DETECTED");//>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> TEST 
    /* 
    switch (row) 

    { 
     case 0: 
      CGContextSetRGBFillColor(c, 0, 0, 1, 1); 
      break; 

     default: 
      CGContextSetRGBFillColor(c, 1, 0, 0., 1); 
      break; 
    } 
    */ 

    contextRect.size.height = -contextRect.size.height; 
    contextRect.size.height -= 15; 
    // Fill and end the transparency layer 
    CGContextFillRect(c, contextRect); 
    CGContextEndTransparencyLayer(c); 

    UIImage *img = UIGraphicsGetImageFromCurrentImageContext(); 
    UIGraphicsEndImageContext(); 
    return img; 
} 

ответ

3

Проблема [self changeColor];. changeColor и changeColor: - это две разные вещи. Если вы определяете его как принимающий один параметр, вы должны его так называть.

Смежные вопросы