uitextview - Error en TextView con el número de teléfono de detección IOS 9
(2)
Esto parece bastante similar a un error que recientemente tuvimos que corregir para PSPDFKit donde la presentación de las hojas no funcionaba cuando el rootViewController
ya presentaba otro controlador. (¿Es posible que tu rootViewController
no esté configurado?)
Puedes leer el código fuente aquí. Esto podría ayudarte a descubrir dónde está el problema para ti:
https://gist.github.com/steipete/b00fc02aa9f1c66c11d0f996b1ba1265
Y, por favor, dupe rdar://26295020 para que esto pueda solucionarse a tiempo para iOS 10. (El error existe desde iOS 8 y se informó por primera vez en iOS 8b5).
Estoy probando mi aplicación en un iPod Touch con iOS 9 (en iOS 8.4 funcionaba para otras funciones: FaceTime, copia a contactos, etc.). Tengo una vista de texto con detección de número de teléfono y recibo el siguiente error:
Advertencia: ¡Intente presentar <_UIRotatingAlertController: 0x16250e00> en cuya vista no se encuentra en la jerarquía de ventanas!
Fallo de afirmación en - [UITextView startInteractionWithLinkAtPoint:], /BuildRoot/Library/Caches/com.apple.xbs/Sources/UIKit/UIKit-3505.16/UITextView_LinkInteraction.m:377
¿Alguna solución a esto?
No es una solución perfecta pero es muy simple y puede ayudar a un desarrollador desesperado:
- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange {
[[UIApplication sharedApplication] openURL:URL];
return NO;
}
Perderá la ventana emergente Copiar, Abrir URL, Cancelar en una pulsación larga, pero DEBE al menos poder abrir la URL de la misma manera que lo haría anteriormente. En iOS 9, esto todavía abre una ventana del navegador dentro de su aplicación para las URL estándar (lo que es bueno).
Esto parece un error de Apple (ya publicado en el radar).
Estábamos viendo un error muy similar al intentar abrir enlaces en una vista modal ya que Apple está tratando de mostrar una nueva vista de alerta modal. Fuera de la vista modal, la detección de datos funcionó bien en iOS 9 para nosotros.