El uso de MBProgressHUD Globally + lo hace singleton

En mi proyecto, cada uno de los eventos de interacción del usuario realiza una llamada de red (que es TCP, no HTTP). Necesito que el Indicador de Actividad sea global paraespectáculo de un azarUIViewController yesconder desdeNetworkActivityManager Clase (una clase personalizada para manejar actividades de red, que no es una subclase de UIViewController o UIView).

Después de buscar en la web descubrí queMBProgressHUD se usa para el mismo propósito, pero no pude encontrar un ejemplo de cómo lo usaría globalmente. (Al decir global me refiero a un objeto singleton deMBProgressHUD y métodos de clase para MOSTRAR y OCULTAR.)

Lo siguiente es lo que he intentado todavía, pero, fallado: EnAppDelegate.h:

@property (nonatomic, retain) MBProgressHUD *hud;

EnAppDelegate.m:

@synthesize hud;

En algún objeto UIViewController aleatorio:

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

Y escondiéndolo, deNetworkActivityManager Clase:

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

Esto hace que el proyecto se bloquee después de algún tiempo (debido a problemas de memoria). Estoy usando ARC en mi proyecto y también estoy usando la versión ARC deMBProgressHUD.

¿Me estoy perdiendo de algo?

Pregunta importante:

Puedo hacerMBProgressHUD ¿Trabaja como UIAlertView? (Diciendo que me refiero a la implementación deMBProgressHUD Independiente de UIView - sa usashowHUDAddedTo: para presentarse)?

Nota: en el código anterior de ocultación de MBProgressHUD, la vista puede cambiarse de lo que era cuando se muestra MBProgressHUD.

Cualquier ayuda muy apreciada.

Respuestas a la pregunta(9)

Su respuesta a la pregunta