0

我正在为 iOS 开发一个应用程序。

班级设计如下:

我的目的是让使用 CustomView 的开发人员为所有标签设置样式,而不是文本。标签的文本将根据设置为 、entity1、entity2、entity3 的值进行设置。

由于我已通过访问器将 label1,..label3 作为属性公开,因此我计划拦截发送的任何消息以设置任何标签的文本并覆盖它以不执行任何操作。这是一个正确的设计吗?

@interface CustomView:UIVIew{

}

@property (nonatomic) UILabel *label1;
@property (nonatomic) UILabel *label2;
@property (nonatomic) UILabel *label3;

@property (nonatomic) CustomEntity *entity1;
@property (nonatomic) CustomEntity *entity2;
@property (nonatomic) CustomEntity *entity3;

@end

@interface CustomEntity:NSObject
@property (nonatomic) NSString *dsiplayName;
@property (nonatomic,assign) NSInteger *totalItems;
@end
4

1 回答 1

1

这几乎不是一个好的设计,这是相当骇人听闻的。如果您要求不设置标签的文本,则不要将标签公开为属性。

于 2013-01-11T13:08:06.417 回答