我想我已经按照示例代码加入了这封信,但下面的内容却给我一个错误。
我想继承UIButton并添加一些属性,但是我从一开始就失败了。
我创建了一个子类文件。这些是我的.h / .m's:
// damButton.h
#import <UIKit/UIKit.h>
@interface damButton : UIButton
{
CGFloat _position;
}
@property (nonatomic) CGFloat position;
@end
和
// damButton.m
#import "damButton.h"
@implementation damButton
@synthesize position = _position;
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
// Initialization code
}
return self;
}
@end
在我的mainviewcontroller中,我已经导入了我的自定义按钮,但是当我使用该属性的内置getter和setter时,我收到一个错误:
//MainViewController.m
#import "damButton.h"
// then within a method...
damButton *b = [damButton buttonWithType:UIButtonTypeRoundedRect];
[b position:5.0];
生成此错误:No visible @interface for 'damButton' declares the selector 'position:'
我不确定我在这里缺少什么,我已经逐字复制了它(我认为)。我只想使用内置的getter / setter(现在)。
我错过了什么?
答案 0 :(得分:5)
您正在调用getter方法,而不是setter方法-setPosition,即尝试:
[b setPosition:5.0];
或
b.position = 5.0;
我可以通过继承UIButton来询问你想要实现的目标吗?