我不想使用 MBProgressHUD,因为线程和管理后台请求的开销。我不需要后台任务处理程序。一个简单的、处理视图/窗口的线程安全库就可以完成这项工作。同样,如果没有从不同的视图控制器创建实例并添加/删除它,我认为它对消费者来说工作量太大。我应该可以从代码中的任何地方调用它。像这样的东西:
[SimpleHud getInstance] pop];
[SimpleHud getInstance] pop withTitle:@"Doing stuff"];
[SimpleHud getInstanca] hide];
问问题
1610 次
2 回答
1
我喜欢 David Sinclair 的DSActivityView。它比 MBProgressHUD 轻,但不是轻量级的。值得一看。
于 2010-12-21T20:58:07.037 回答
0
这就是我想出的:
-(void)pop:(NSString *)text {
[self performSelectorOnMainThread:@selector(popLightBox:) withObject:text waitUntilDone:YES];
}
-(void)hide {
[self performSelectorOnMainThread:@selector(hideLightBox) withObject:nil waitUntilDone:YES];
}
-(void)popLightBox:(NSString *)text
{
NSArray *windows = [[UIApplication sharedApplication] windows];
NSInteger last = [windows count]-1;
if (last < 0) return;
UIWindow *currentWindow = [windows objectAtIndex:last];
[currentWindow addSubview:self.view];
if (text == nil) {
self.loadingLabel.text = __DEFAULT_LOADING_TEXT__;
}else {
self.loadingLabel.text = text;
}
}
-(void)hideLightBox
{
[self.view removeFromSuperview];
}
类是一个简单的 UIViewController。
于 2010-12-21T20:37:14.607 回答