我有两个 UIView 子类,比如“A 类”和“B 类”。A 类在其初始化程序中具有代码[self addSubview:instanceOfClassB];
。在 B 类中drawRect:
是代码行[self addSubview:imageViewInstance];
。同样在 B 类中drawRect:
,我将值分配给该 imageView 实例的animationImages
、animationDuration
和animationRepeatCount
属性。但是,我也调用startAnimating
了这个 UIImageView 实例,但它总是使应用程序崩溃。然后,我尝试从B 类的超视图 A 类调用startAnimating
该 UIImageView 实例。但是,它仍然因错误而崩溃:drawRect:
由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“ * -[__NSArrayM insertObject:atIndex:]: object cannot be nil”
并且在代码行上有“线程 1:信号 SIGABRT”消息[imageView startAnimating];
。
我怀疑它在这里崩溃是因为drawRect
B 类在 A 类之后被调用drawRect
,所以当我告诉图像视图开始制作动画时它会崩溃,因为图像视图尚未创建。所以基本上我要问的是我可以用什么方法告诉图像视图开始动画而不会崩溃?