我有一个UIViewController
,从中我可以看到模态视图。
[self presentViewController:modal animated:YES completion:nil];
它有两个
UIBarButtonItems
(名为取消和保存)。我正在对保存按钮点击执行一些操作。我在SVProgressHUD
方法上显示-saveButtonTapped
指示器。- (IBAction)saveButtonTapped:(id)sender
{
NSLog(@"Modal Save Pressed.");
[SVProgressHUD showWithStatus:@"Loading..."];
// Some other code...
}
问题是指示器没有显示在我的
ModalView
前面。它开始动画,但在ModalView
之后,而不是前面。发生了什么事:
UIViewController ===> SVProgressHUD ===> ModalView
我想要的是:
UIViewController ===> ModalView ===> SVProgressHUD
我searched,但没有找到任何解决方案。
为什么会发生这种情况以及如何解决此问题?
最佳答案
最后,我必须使用NSThread来解决问题。
实际上,我从-postForEditDispatch
方法中调用了一种名为-saveButtonTapped
的方法。我使用-detachNewThreadSelector:toTarget:withObject:
创建了一个单独的线程,并尝试在该线程上调用该方法。
示例代码:
- (IBAction)saveButtonTapped:(id)sender
{
NSLog(@"Modal Save Pressed.");
[SVProgressHUD showWithStatus:@"Loading..."];
// Some other code...
[NSThread detachNewThreadSelector:@selector(postForEditDispatch:) toTarget:self withObject:nil];
}