我正在创建从其数据源获取有关其框架的信息的子视图类。我想创建一个自定义初始化方法,该方法将实现数据源协议的对象作为参数。数据源协议方法之一,frameSize,让数据源返回一个 CGrect。我的问题是是否可以在调用 [super initWithFrame] 之前在自定义初始化中设置数据源?这就是我所拥有的:
-(id) initWithDataSource:(id)dataSource
{
self._dataSource=dataSource;
[super initWithFrame:[self._dataSource frameSize];
return self;
}
在调用初始化方法之前设置属性对我来说似乎违反直觉。有没有好的方法可以做到这一点,或者是否可以用空框架初始化它,然后再设置框架?提前致谢