我如何才能延迟初始化按钮的NSMutableArray?我做这样的事情:
-(NSMutableArray *)roasteryButtons
{
if(!roasteryButtons)
{
roasteryButtons = [ NSMutableArray new];
//other code
}
return roasteryButtons;
}
而且不知道该怎么称呼这个懒惰的初始化器?即我需要初始化数组,以便我可以为数组中的每个按钮设置框架
最佳答案
你所做的是正确的。 u不是在类的init方法中分配数组,而是仅在需要时分配数组。因此,它达到了延迟分配的目的。
在该类中,只要要数组,就调用
NSMutableArray *arr = [self roasteryButtons];
还要在头文件中将方法声明为
-(NSMutableArray*)roasteryButtons;
。如果要在其他类中引用该数组,则调用类似于
[classObj roasteryButtons];
我已经将其显示为实例方法。如果您愿意,也可以将其声明为类方法。
并以
-(void)dealloc
方法释放它。