我正在使用 AFnetworking 调用服务器。下载时,我使用 MBProgressHUD 来显示正在下载数据。到目前为止,一切都很好。我的问题是当我按下主页按钮然后重新启动应用程序时。我希望页面自动刷新并让 MBProgressHUD 向用户显示正在下载的内容。这是我做不到的。我可以下载数据,但我无法让 HUD 部分工作。
首先,在 viewDidLoad 方法中添加:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(applicationDidBecomeActiveNotificationAction)
name:UIApplicationDidBecomeActiveNotification
object:nil];
现在在方法applicationDidBecomeActiveNotificationAction
中,我调用[self downloadWebsites]
。
在方法downloadWebsites
中完成了大部分工作:这里是:
//show the hud
MBProgressHUD* progressHUD = [MBProgressHUD showHUDAddedTo:self.view animated:YES];
progressHUD.labelText = @"Loading";
progressHUD.mode = MBProgressHUDAnimationFade;
[self.list_websites getPath:[NSString stringWithFormat:@"%@?%@", @"websites", self.auth_header] parameters: nil success:^(AFHTTPRequestOperation *operation, id responseObject) {
//download data in the success block
//refresh the ui
[self.tableView reloadData];
[progressHud self.view animated:YES];
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
//failure block. log the error
NSLog([error description]);
}];
为什么这不起作用?我可以得到数据。但我无法让 progressHud 显示。我该如何解决?