textViewShouldBeginEditar no llamado cuando no editable convertido en editable

Encontré un problema en el UITextFieldDelegate, cualquiera puede ayudarme será muy apreciado. Hay una UITextView, y implementé su delegado. Normalmente todos los methods delegates se llaman muy buenos. Pero en este caso:

  1. configure UITextView no editable.
  2. Mantenga presionado el UITextView hasta que aparezca la window emergente (copyr, cortar, …).
  3. descarte la window emergente y configura UITextView editable
  4. toque UITextView para hacer que UITextView ingrese al modo de edición.
  5. encontrará el método de delegado textViewShouldBeginEditing no llamado.

Necesito que se llame a textViewShouldBeginEditing para manejar algunos cambios de UI. Alguien sabe cómo resolverlo? ¡Muchas gracias!

Proyecto de testing : he creado un proyecto de testing simple que registrará las llamadas de los methods, puede probar mi caso rápidamente, ¡gracias! El código fuente está aquí: http://goo.gl/tGQS5

¿Acaso olvidaste ir:

myTextView.delegate = self;

?

Información extra

En una aplicación reciente que lanzé, hice algo similar.

Deshabilité un UITextField para que pudiera usar un gesto de prensa prolongado en un UITableViewSectionHeader para editar el nombre del encabezado de sección y el encabezado de la sección de un solo toque para seleccionarlo.

Tuve que poner:

// groupName is my UITextField groupName.userInteractionEnabled = YES; [groupName becomeFirstResponder]; 

En mi método de callback de reconocimiento de gestos largo de prensa.

@Albert Zhang, "textViewShouldBeginEditing" se llamará solo cuando su vista de text sea la primera respuesta. Puede forzarla haciendo lo siguiente.

 - (IBAction)onSwitch:(id)sender{ self.textView.editable = self.editableSwitch.on; if(self.textView.editable) { [[self textView]becomeFirstResponder]; } }