El keyboard negro ios con text blanco aparece después de cambiar la vista cuando se abre el keyboard

Estoy usando un keyboard de estilo "oscuro" para mi TextField estándar. Esto es para un campo de text de inicio de session, o campo de text "olvidar mi contraseña", donde el usuario ingresa alguna información, la envía y, si tiene éxito, se envían a otra vista, generalmente mediante un controller de navigation estándar popViewControllerAanimated :. Un AlertView puede aparecer entre ellos.

El problema que he visto es que el keyboard está abierto, un color gris "oscuro" normal, y luego el usuario hace clic en Enviar, puede aparecer una vista de alerta y al descartar que la vista pase a la siguiente pantalla con el keyboard anterior saliendo de la pantalla. En la nueva pantalla, otro keyboard de estilo pnetworkingeterminado puede deslizarse o no y luego desaparecer (¡sin un campo de text centrado en incluso!). Luego, onclick en otro campo de text, o volver a la vista anterior y hacer clic en un campo de text, este keyboard negro con teclas blancas aparece erróneamente. Sigue apareciendo para los campos de text hasta que algo pueda volver a ponerlo en el gris oscuro normal después de unos pocos clics.

Intenté descartar el keyboard original antes de que el popViewController sucediera, de varias maneras, pero no parece ayudar. Si el AlertView aparece entre ellos, até el popViewController a la acción de delegado haciendo clic en el button AlertView. El keyboard generalmente no desaparece lo suficientemente rápido como para salir antes del empuje. Un retraso no lo ayuda.

EDIT: The alertview parece ser un culpable definitivo aquí, interfiriendo con el pop y el keyboard de alguna manera.

-(BOOL) textFieldShouldReturn:(UITextField *)textField{ [textfield resignFirstResponder]; [self.view endEditing:YES]; return YES; } -(IBAction)submitRequest { [textfield resignFirstResponder]; [self.view endEditing:YES]; // make API call, if call succeeds run this block { UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"..." message:@"..." delegate:delegate cancelButtonTitle:@"OK" otherButtonTitles:nil, nil]; dispatch_async(dispatch_get_main_queue(), ^{ [alert show]; }); // } } // delegate after alert OK is pressed - (void) alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex { [self.navigationController popViewControllerAnimated:YES]; } 

¿Cómo puedo evitar este keyboard blanco / negro?

introduzca la descripción de la imagen aquí

 Try using the below code. It works fine for iOS 8 and below version if (IS_OS_8_OR_LATER) { UIAlertController *alertVC = [UIAlertController alertControllerWithTitle:title message:msg prefernetworkingStyle:UIAlertControllerStyleAlert]; UIAlertAction *cancelAction = [UIAlertAction actionWithTitle:B_title style:UIAlertActionStyleCancel handler:^(UIAlertAction *action) { [self.navigationController popViewControllerAnimated:YES]; }]; [alertVC addAction:cancelAction]; [self presentViewController:alertVC animated:YES completion:nil]; } else{ UIAlertView *alert = [[UIAlertView alloc] initWithTitle:title message:msg delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil, nil]; [alert show]; } }