[英]What is the easiest way to determine an iOS .app bundles size while developing?
[英]What's the easiest way to determine inside a method if it has been called the first time since app start?
我有做一些启动动画的方法。 在应用程序使用过程中,该方法被调用了很多次,但是在第一次调用时,它还需要做一些特殊的事情。
Singletons可以走吗? 也许还有更好的方法,而不是测量此方法被调用的次数并将其存储在ivar中。
- (void)someMethod {
static BOOL hasBeenCalledBefore = NO;
if (!hasBeenCalledBefore) {
// perform setup
hasBeenCalledBefore = YES;
}
// do other stuff
}
如果使用线程,可能需要额外的工作,但这是基本思想。
为什么构造函数中没有初始化代码? 也许您需要将该方法分解到它自己的类中,该类使用构造函数来处理您提到的init块。
对查克答案的修正(非常正确)
他的工作可以回答您的问题,但是您可以使用的另一种选择(假设它不需要访问传递给该方法的任何变量)将代码从您的方法中取出并放入静态初始化器中。 它仅在首次加载该类时执行,并将隔离本质上完全不同的代码段。
如果希望每个新类都调用它,请使用Chuck的答案但要带有成员变量,或者使用类初始化程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.