UIActivityIndi​​catorView正确使用

我的问题涉及在iPhone项目中使用活动指标。 我有一个包含UIActivityIndi​​catorView的类

@interface StatusView : UIView { UIActivityIndicatorView *indicator; UILabel *textLabel; } - (id)initWithFrame:(CGRect)frame Text:(NSString*)text andShowIndicator:(BOOL)value; 

在我的业务逻辑代码中,我调用[indicator startAnimating],框架出现在屏幕的底部。 该代码还包含释放指标的dealloc方法

 - (void)dealloc { [indicator release]; [super dealloc]; } 

大多数情况下,指标运作良好,但有几次不会消失。

我是否总是需要显式调用stopAnimating方法? 释放处理它吗? 什么是正确的用法?

stopAnimating:方法停止UIActivityIndicatorView的轮子并release释放对象。
在Objective-C中,每个对象都有一个内部计数器,用于跟踪对象或对象所使用的所有引用。 [object retain]将计数器增加1, [object release]将计数器递减1.当计数器达到零时,dealloc被调用。 release是关于内存pipe理,而stopAnimating:UIActivityIndicatorView一个function。 所以如果你想停止animation你的UIActivityIndicatorView你将不得不调用stopAnimating:方法。 在ARC不必做release所以更好地使用ARC

当你使用这个对象时,最好的方法是stopAnimating当你想停止,从超级视图([activityObject removeFromsuperview])中移除,并最终释放它。 [activityObject发布];