子类 UIButton 似乎没有初始化
Posted
技术标签:
【中文标题】子类 UIButton 似乎没有初始化【英文标题】:Subclassed UIButton doesn't appear to initialize 【发布时间】:2012-05-01 00:14:06 【问题描述】:这开始是一个简单的问题,但我无法解决。我已经对 UIButton 进行了子类化(我知道,有争议),但我似乎无法让它正常工作。我的 UIButton 子类如下所示:
.h
@interface SocialButton : UIButton
@property (nonatomic, strong) CustomClass *cust;
- (id)initWithObject:(CustomClass *)custom andFrame:(CGRect)frame;
@end
.m
@implementation SocialButton
@synthesize custom=_custom;
- (id)initWithObject:(CustomClass *)custom andFrame:(CGRect)frame;
self = [self initWithFrame:frame];
if (self)
[self addTarget:self action:@selector(buttonTouchUpInside:) forControlEvents:UIControlEventTouchUpInside];
self.backgroundColor = [UIColor blueColor];
self.cust = custom;
return self;
@end
稍后,当我尝试从此类创建一个按钮时,如下所示:
SocialButton *social = [[SocialButton alloc] initWithObject:object andFrame:frame];
它似乎不起作用。有什么建议吗?
【问题讨论】:
【参考方案1】:你好像忘了打电话给super
。变化:
self = [self initWithFrame:frame];
到:
self = [super initWithFrame:frame];
【讨论】:
是的,我做到了。就是这么简单。以上是关于子类 UIButton 似乎没有初始化的主要内容,如果未能解决你的问题,请参考以下文章
子类UIButton:属性未在super.init调用时初始化