为什么我的UIView类别会引发警告?

时间:2010-10-01 17:32:49

标签: iphone objective-c uiview categories objective-c-category

我在UIView中添加了一个类别来保存一些转换辅助方法。这些方法都有效;但是,我得到编译器警告:

  

警告:'UIButton'可能无法响应'-fadeOutWithDuration:'

我的“UIView + Trans.h”文件如下所示:

@interface UIImage (trans)
- (void) fadeOutWithDuration:(CGFloat)duration;
@end

我的“UIView + Trans.m”文件如下所示:

#import <QuartzCore/QuartzCore.h>
#import "UIView+Trans.h"

@implementation UIView (trans)
- (void) fadeOutWithDuration:(CGFloat) duration {
    //...
}
@end

我正在调用这样的方法:(并且在每个使用类别方法的文件的顶部都有#import“UIView + Trans.h”。)我也尝试将UIButton *转换为UIView *

[self.myButton fadeOutWithDuration:kFadeOutDuration];

我在同一个项目中成功地使用了这篇Categories Example文章中的“NSString + Reverse”示例,没有发出令人讨厌的警告。

1 个答案:

答案 0 :(得分:2)

在您的标头文件中,您已在UIImage而非UIView上声明了该类别。