2010-07-23 18 views
9

El ResignFirstResponder para un UITextField en el iPhone no funciona para el Ipad. ¿Cómo puedo descartar mi teclado mediante programación?Descartar el teclado en el iPad

Gracias,

+0

¿Algún código? _____ – kennytm

Respuesta

7

ACTUALIZACIÓN esta pregunta ya no es exacta. Vea el correct answer.

Si su UITextField se encuentra en una hoja de página modal (UIModalPresentationFormSheet), entonces (actualmente) no hay forma de forzar al dispositivo a cerrar el teclado this devforums post de un ingeniero de Apple.

14

Now we can

- (BOOL)disablesAutomaticKeyboardDismissal { 
    return NO; 
} 
+1

Esto parece haber dejado de ser una solución efectiva en iOS 6: ¿alguien más está viendo lo mismo? – Snips

+0

No es efectivo para mí en iOS 6.0.x – OscarTheGrouch

+0

avalado por ... no es efectivo en iOS 6 – theiOSDude

25

En iOS 4.3, Apple introdujo el método mencionado anteriormente, disablesAutomaticKeyboardDismissal. Devuelve SÍ para UIModalPresentationFormSheet, lo que evita que el teclado se cierre.

Anulando este método funciona, pero si presenta su controlador de vista dentro de un UINavigationController, debe subclase UINavigationController y anular el método allí.

He confirmado que esto sí funciona en iOS 6. Solo asegúrese de prestar atención a la cláusula UINavigationController.

+0

Buen trabajo, contento :) – ader

+1

También verificado para iOS 7.0. –

+0

Pregunta tonta: ¿cómo hacer esto si su UINavigationController está en un guión gráfico en XCode 5? No veo ningún código listo para ser cambiado, para usar una copia anulada de esta clase ...? –

Cuestiones relacionadas