这里发生了什么?MBProgressHUD在被此按钮触发时变淡/变亮
http://screencast.com/t/WACeaQP00iqb
下面是该按钮的代码(这三个方法调用产卵3(是3,我没有写服务器:d)需要一些时间来完成异步数据的任务):
- (IBAction)didTouchClockButton:(id)sender {
[self.dr isUserClockedIn];
hud = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
hud.dimBackground = NO;
// hail mary
[[NSRunLoop currentRunLoop] runUntilDate:[NSDate distantPast]];
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_LOW, 0), ^{
// Do something...
if (![self.dr isNetworkDead])
if ([self.dr isUserClockedIn]) { // add clock in/clock out function to this button
hud.labelText = @"Clocking Out..";
[self.dr clockOut];
} else {
hud.labelText = @"Clocking In..";
[self.dr clockIn];
}
});
}
我把HUD解雇一个志愿回调,这是没有工作,但第一件事情里面第一。
我认为这也是标签,但我早先评论说,它仍然消失。 – neptune
是否有任何其他代码(可能在clockIn/clockOut方法中)可能会在顶部添加视图或其他东西? – Mike
上帝,我的意思是,迈克,你是正确的一个观点参与。这些时钟方法触发KVO回调,将标签文本和顶部的图形交换。所以我想在更新另一个视图元素时不能运行MBProgressHUD? HM .. – neptune