我很难理解应该合成哪些对象。例如:
@interface DoSomething : UIView
@property (strong, nonatomic) UIColor *frameColor;
@property BOOL toggleScrollability;
- (void) changeBackgroundColorOfView;
@end在.m文件中,应该合成这三项中的哪一项?如果我试着合成它们,有什么坏处吗?一般来说,什么是你应该合成的对象的经验法则?
发布于 2014-10-04 19:58:03
前两个是属性;第三个是实例方法。@synthesize只适用于属性。
然而,如果您正在为iOS 6或更高版本构建,您根本不需要合成。在过去的几年里,编译器已经自动地处理了这个问题。
发布于 2014-10-04 20:03:45
您只能合成属性,因此无法编写@synthesize changeBackgroundColorOfView。
我想,从XCode 4开始,你就不用再使用“合成”了。编译器在需要时自动添加它,您可以通过在属性名称之前添加__来访问它。
在您的示例中,如果您在frameColor类中,将以_frameColor的形式访问DoSomething属性,如果不是,则访问doSomethingInstance.frameColor。
但是,如果要将属性重命名为内部内容,则始终可以自己添加。
见苹果参考。
https://stackoverflow.com/questions/26196575
复制相似问题