基本思想,我需要在接收互联网数据时阻止用户交互。当我获得所有数据时,我需要取消阻止用户交互。取消阻止用户交互后,我的 UIToolBar 项目没有任何接触。
我创建了一个简单的代码来演示这种行为。
首先我创建了 UISplitViewController。在 DetailsViewController 上,我添加了 UIToolBar 和一项。
细节视图控制器
- (void)viewDidLoad
{
[super viewDidLoad];
__block UIView *myView = self.view;
dispatch_async(dispatch_get_main_queue(), ^{
[AppDelegate setInteraction:NO onView:myView];
[AppDelegate setInteraction:YES onView:myView];
});
}
应用委托
+ (void)setInteraction:(BOOL)allow onView:(UIView *)aView {
dispatch_async(dispatch_get_main_queue(), ^{
[aView setUserInteractionEnabled:allow];
for (UIView * v in [aView subviews]) {
[self setInteraction:allow onView:v];
}
});
}
取消阻止用户交互后,我的 UIToolBar 项目没有任何接触。