如果隐藏/显示MBProgressHUD状态,请检查它

时间:2012-10-01 09:55:05

标签: iphone objective-c progress-bar mbprogresshud

我正在显示一些视图,webVies并且在加载时我会显示带有等待消息的ProgressHud。我正在使用该对象的实例:

MBProgressHUD * progrssHUD

使用showhide方法控制加载窗口。在某些视图中,我只想在hide方法打开后添加视图 - 这意味着现在不显示任何窗口。

我如何从任何界面检查MBProgressHUD的状态是什么,并且仅在状态X之后做某事?

2 个答案:

答案 0 :(得分:3)

如果您看到MBProgresshud的实现,那么您会发现当他们隐藏它时,他们将其设置为alpha 0,当他们显示它时,他们将其设置为alpha 1.

因此,您可以使用此属性来检查它是隐藏还是显示。 即

if(progrssHUD.apha == 0){
  //perform hide operation
}else{
  //Perform show operation
}

答案 1 :(得分:0)

-(IBAction)SHOW{
    HUD = [[MBProgressHUD alloc] initWithView:self.navigationController.view];
    [self.navigationController.view addSubview:HUD];
     HUD.delegate = self;
    [HUD show:YES];
    // Show the HUD while the provided method executes in a new thread
    [HUD showWhileExecuting:@selector(showHUD) onTarget:self withObject:nil animated:YES];
      }

- (void)hudWasHidden:(MBProgressHUD *)hud {
    // Remove HUD from screen when the HUD was hidded
    [HUD removeFromSuperview];
    [HUD release];
    HUD = nil;
}

方法显示在执行代理方法时,执行呼叫呼叫是非常活跃的。