Iphone 如何从方法中显示并开始设置UIActivityIndicatorView的动画

Iphone 如何从方法中显示并开始设置UIActivityIndicatorView的动画,iphone,uiactivityindicatorview,Iphone,Uiactivityindicatorview,我有一个方法,它执行一个耗时的操作,比如说连续十次调用 [[NSString alloc]initWithContentsOfURL:u] 我想要在方法调用之前处于隐藏状态的UIActivityIndicatorView来显示和设置动画,因此我写: activityIndicator.hidden = NO; [activityIndicator startAnimating]; 在方法的开头 但这当然行不通。UIActivityIndicatorView仅在方法结束后才会设置动画 这是不能接

我有一个方法,它执行一个耗时的操作,比如说连续十次调用 [[NSString alloc]initWithContentsOfURL:u]

我想要在方法调用之前处于隐藏状态的UIActivityIndicatorView来显示和设置动画,因此我写:

activityIndicator.hidden = NO;
[activityIndicator startAnimating];
在方法的开头

但这当然行不通。UIActivityIndicatorView仅在方法结束后才会设置动画

这是不能接受的。我必须在函数调用期间显示动画

有人知道怎么做吗


也许是手术吧?(有人有这样的例子吗?

我假设您正在用这种方法做一些昂贵的工作,并且在执行这些工作时,您希望活动指示器旋转。昂贵的工作不应该在主线程上完成(iOS可能会杀死你的应用!)。将昂贵的工作放在一个单独的线程上:

- (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg
…当方法(aSelector)完成时,调用:

- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait 
…然后停止活动指示器

不要从非主线程中调用任何UI代码