Uso de MBProgressHUD Globalmente + torná-lo singleton

No meu projeto, cada um dos eventos de interação do usuário faz uma chamada de rede (que é TCP, não HTTP). Eu preciso que o Indicador de Atividade seja global paraexposição de um aleatórioUIViewController eocultar deNetworkActivityManager Classe (uma classe personalizada para lidar com atividades de rede, que não é uma subclasse de UIViewController ou UIView).

Depois de pesquisar na web, descobri queMBProgressHUD é usado para o mesmo propósito, mas não consegui descobrir um exemplo de como usá-lo globalmente. (Ao dizer global quero dizer um objeto singleton deMBProgressHUD e métodos de classe para SHOW e HIDE.)

A seguir, o que eu já tentei, mas falhei:AppDelegate.h:

@property (nonatomic, retain) MBProgressHUD *hud;

EmAppDelegate.m:

@synthesize hud;

Em algum objeto aleatório do UIViewController:

appDelegate.hud = [MBProgressHUD showHUDAddedTo:appDelegate.navigationController.topViewController.view animated:YES];
appDelegate.hud.labelText = @"This will take some time.";

E enquanto escondendo, deNetworkActivityManager Classe:

[MBProgressHUD hideHUDForView:appDelegate.navigationController.topViewController.view animated:YES];

Isso faz com que o projeto trave após algum tempo (devido a problemas de memória). Estou usando o ARC no meu projeto e também, estou usando a versão ARC doMBProgressHUD.

Estou esquecendo de algo?

Questão importante:

Posso fazerMBProgressHUD funciona como o UIAlertView? (Dizendo que eu quero dizer implementação deMBProgressHUD independente do UIView - sa ele usashowHUDAddedTo: apresentar-se) ???

Por favor, observe: No código acima, de esconder o MBProgressHUD, o View pode ser alterado em relação ao que estava mostrando MBProgressHUD.

Qualquer ajuda muito apreciada.

questionAnswers(9)

yourAnswerToTheQuestion