Establezca un time de espera para MBProgressHUD

Estoy usando MBProgressHUD para mostrar un indicador de actividad mientras descargo datos del service web. La aplicación se usará a menudo en áreas rurales con poca conectividad, así que quiero poder establecer un time de espera para que el HUD diga, 10 segundos (como una cifra arbitraria). No estoy seguro de cómo hacer esto. ¿Alguien puede ofrecer sugerencias? ¡Gracias!

MBProgressHUD *hud = [[MBProgressHUD alloc] initWithView:self.view]; NSString *info = [NSString stringWithFormat:@"Loading %@ gauges", self.stateIdentifier]; [hud setLabelText:info]; [hud setDetailsLabelText:@"Please wait..."]; [hud setDimBackground:YES]; [hud setOpacity:0.5f]; [hud show:YES]; [self.view addSubview:hud]; dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_HIGH, 0), ^{ stateGauges = [[GaugeList alloc] initWithStateIdentifier:stateIdentifier andType:nil]; dispatch_async(dispatch_get_main_queue(), ^{ [self.tableView reloadData]; [hud removeFromSuperview]; }); }); 

Puede usar:

 - (void)hide:(BOOL)animated afterDelay:(NSTimeInterval)delay; 

método de MBProgressHUD .

Cree MBProgressHUD como:

 MBProgressHUD *hud = [[MBProgressHUD alloc] initWithView:self.view]; [self.view addSubview:hud]; NSString *info = [NSString stringWithFormat:@"Loading %@ gauges", self.stateIdentifier]; [hud setLabelText:info]; [hud setDetailsLabelText:@"Please wait..."]; [hud setDimBackground:YES]; [hud setOpacity:0.5f]; [hud show:YES]; [hud hide:YES afterDelay:10.0]; 

Para Swift, la siguiente es la solución:

 let progressHUD = MBProgressHUD.showHUDAddedTo(self.view, animated: true) progressHUD.hideAnimated(true, afterDelay: 5)