2008-10-30 14 views
6

En mi vista del controlador -viewDidLoad método, llamo [myTextField becomeFirstResponder]; Esto funciona como un amuleto, abre el teclado y myTextField obtiene foco.- [UITextField isFirstResponder] devuelve falso aunque el campo actualmente está editando

Tengo un botón con una acción de destino (la acción está en el mismo controlador) que comprueba [myTextField isFirstReponder] - pero siempre devuelve falso (er, NO en términos de Cocoa;)).

¿No es esa la manera correcta de averiguar si myTextField tiene el teclado para la entrada?

Respuesta

12

¿Qué hay de comprobar el valor de la propiedad de edición, es decir, [myTextField isEditing]?

Creo que su botón asume el estado de la primera persona que responde cuando lo toca.

+2

Eso es exactamente. Al hacer clic en el botón, se enfoca y, técnicamente, quiero saber cuál está actualmente editando, no necesariamente si la ventana lo considera el primer repondedor. ¡Gracias! – RickDT

+2

Esto funciona, claro. ¿Pero por qué no funciona el 'isFirstReponder'? Nadie curioso? –

+0

esto no funciona para mí. aunque el campo de texto se está editando claramente, 'isFirstResponder' y' isEditing' ambos devuelven falso – shoe

Cuestiones relacionadas