我有一个包含@property的视图控制器,它是UIView的自定义子类(我们可以将其称为CanvasView)。这个CanvasView正在获取@synthesized,但是我想对它进行一些自定义初始化。我知道我需要在CanvasView上实现-(id)initWithFrame并在那里进行自定义初始化,但是-(id)initWithFrame没有被调用,或者[self = [super initWithFrame:frame]失败了。 @synthesize是否呼叫initWithFrame?怎样确定我的[super initWithFrame:frame]是否失败?

注意:到目前为止,我已经以编程方式构建了接口,因此在这里不应该使用-(id)initWithCoder-(id)initWithNibNamed:bundle:(我认为)。我猜答案是用笔尖开始构建我的界面。

最佳答案

@synthesize仅基于在其声明中指定的选项,为属性的setter和getter生成代码。

您如何初始化CanvasView的实例?

10-08 12:10