problema de pantalla de inicio de sesión de iPhone

Tengo una gran aplicación. Tiene muchas tablas y navegación entre ellas. Comencé un proyecto como 'NavigationBasedProject' (plantilla xcode). Pero ahora necesito agregar inicio de sesión al inicio de la aplicación. Entonces, aquí lo que hice hasta ahora: en 'didFinishLaunchingWithOptions' agregué:

loginViewController = [[LoginViewController alloc]init];
        [loginViewController.view setFrame:CGRectMake(0, 0, 320, 480)];
        [self.window.rootViewController presentModalViewController:loginViewController animated:NO];

Cuando los datos del usuario son válidos, descarto la pantalla de inicio de sesión como esta:

[self.loginViewController dismissModalViewControllerAnimated:YES];

User también puede cerrar sesión desde la aplicación. Y luego presento nuevamente la pantalla de inicio de sesión como esta:

[self.window.rootViewController presentModalViewController:loginViewController animated:NO];

Y esto funciona. Pero los campos de texto en la pantalla de inicio de sesión todavía están llenos de datos que el usuario ingresa para iniciar sesión. Y me temo que tengo algún problema de memoria aquí. Cómo eliminar completamente la pantalla de inicio de sesión de la memoria cuando el usuario inicia sesión. No utilizo el diseñador GUI. Conecto todo desde el código. También me pregunto si es una buena idea hacer una pantalla de inicio de sesión y una vista modal.

Respuestas a la pregunta(2)

Su respuesta a la pregunta