UIActivityIndicatorView正确使用
我的问题涉及在iPhone项目中使用活动指标。 我有一个包含UIActivityIndicatorView的类
@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发布];