Perché la mia categoria UIView causando avvertimenti?
-
27-09-2019 - |
Domanda
ho aggiunto una categoria per UIView per contenere alcuni metodi di transizione di supporto. I metodi sono tutti di lavoro; tuttavia, ottengo avvisi del compilatore:
Attenzione: 'UIButton' non può rispondere a '-fadeOutWithDuration:'
I miei "UIView + Trans.h" guarda di file come questo:
@interface UIImage (trans)
- (void) fadeOutWithDuration:(CGFloat)duration;
@end
I miei "UIView + Trans.m" guarda di file come questo:
#import <QuartzCore/QuartzCore.h>
#import "UIView+Trans.h"
@implementation UIView (trans)
- (void) fadeOutWithDuration:(CGFloat) duration {
//...
}
@end
E sto chiamando il metodo come questo: (e hanno #import "UIView + Trans.h" nella parte superiore di ogni file che utilizza il metodo categoria.) Ho provato anche lanciare l'UIButton * ad un UIView *.
[self.myButton fadeOutWithDuration:kFadeOutDuration];
ho usato l'esempio "NSString + Reverse" da questo Categorie esempio articolo con successo nello stesso progetto e senza le avvertenze fastidiosi.
Soluzione
Nel file di intestazione, hai dichiarato la categoria sulla UIImage
non UIView
.