カスタムボタンクラスがあります:
CustomButton.hファイル:
@interface CustomButton : UIButton
@property (nonatomic, retain) NSString* info;
@end
CustomButton.mファイル:
#import "CustomButton.h"
@implementation CustomButton
@synthesize info;
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
}
return self;
}
@end
私のメインビューコントローラーでは:
CustomButton* btn = [CustomButton buttonWithType:UIButtonTypeDetailDisclosure];
[btn setInfo:@"foobar"];
NSLog(@"%@", [btn info]);
[self.view addSubview:btn];
単純なボタン([CustomButton new]
)の場合、エラーは発生しません。しかし、選択するbuttonWithType:UIButtonTypeDetailDisclosure
と、次のエラーが発生します。
*** Terminating app due to uncaught exception 'NSInvalidArgumentException',
reason: '-[UIButton setInfo:]: unrecognized selector sent to instance 0x753c8c0'
なぜこうなった?