我想知道是否有一个等同于awakeFromNib的方法。
我面临的问题如下:
我的应用程序有2个视图,第二个视图有一个子类(UIview),我用它来绘制
我使用一个从awakeFromNib调用的计时器,以便为绘图设置动画。
- (void) awakeFromNib
{
timer = [NSTimer scheduledTimerWithTimeInterval:0.02 target:selfselector:@selector(ReDraw) userInfo:nil repeats:YES];
}
- (void) ReDraw
{
i++;
[self setNeedsDisplay];
}
现在,当我回到第一个视图并返回到此视图时,绘图仍处于打开状态(不再调用awakeFromNib)。
当我回到第一个视图时,计时器不会停止。
我希望计时器在我返回时停止,并且当我再次访问第二个视图时绘图重新启动。
方法viewdidLoad和initWithFrame在子类内部不起作用。
谢谢
答案 0 :(得分:1)
awakeFromNib
,viewdidLoad
和initWithFrame
都在对象的初始化阶段被调用。如果已创建对象,则不会再次调用这些方法。您可以使用视图的setNeedsDisplay
方法强制视图绘制自己。