我已经将Apple的Reachability.h实现到我的演示应用程序中。问题是我注意到我的应用程序在检查连接时停止了。
所以,我添加了一个活动指标(来自MBProgressHUD)。但该指标并不具有动画效果。它也停止了应用程序。
所以,我想把活动指示器放在另一个不同于主线程的线程中,但它仍然不是动画。
注意:我不是很有经验
更新:此外,我已经尝试了原生的活动指标而没有运气。
- (void)anotherThread
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
HUD = [[MBProgressHUD alloc] initWithView:self.navigationController.view];
[self.navigationController.view addSubview:HUD];
// Set determinate mode
HUD.mode = MBProgressHUDModeDeterminate;
HUD.delegate = self;
HUD.labelText = @"loading";
// myProgressTask uses the HUD instance to update progress
[HUD showWhileExecuting:@selector(crazyCounter) onTarget:self withObject:nil animated:YES];
[pool release];
}
答案 0 :(得分:1)
UI代码应保存在主线程中。因此,您可能希望使用GCD(大中央调度)将检查连接代码放在另一个线程中,而不是将活动指示器放入另一个线程中。完成后,您可以删除或隐藏您的活动指示器。
PS。我不太清楚MBProgressHUD
做了什么,但你确实希望确保你有[activityIndicator startAnimating]
之类的东西。至少对于正常活动指标,您需要手动打开它。