UITextView cambia la fuente cuando detecta la acción

He estado buscando una solución a este problema por un time, y nadie parece haber encontrado un problema similar.

Básicamente tengo múltiples UITextViews que uso para detectar direcciones, urls, numbers de teléfono, etc. (cualquier cosa que se pueda detectar a través de UIDataDectorTypeAll) de algunas notas de EKEvent. Luego agrego estas UITextViews como sub-vistas de un UIScrollView.

Ahora, por alguna razón u otra, una vez que UITextView detecta una dirección o un número de teléfono y se convierte en un objective accionable, dibujará aleatoriamente con una fuente 2x su fuente especificada.

He configurado testings para volver a dibujar mis vistas si toco. Cuando el UITextView se agrega inicialmente a la vista, puedo ver en negro el text apropiado. Luego hace su trato de detección y se convierte en un objective accionable. A veces se mantiene el tamaño adecuado, a veces se dibuja en la fuente 2x (pero aún en el marco apropiado, por lo que se recorta).

Es muy sencillo, pero aquí está mi código a continuación. Todas las variables son valores correctos, el marco es correcto, el text es correcto, todo es correcto y aproximadamente el 50% del time que dibuja es correcto. ¡Es solo ese otro 50% del time en que se convierte (aparentemente) en fuente 2x! ¡Cualquier ayuda es muy apreciada!

UITextView *locationTextView = [[UITextView alloc] init]; locationTextView.dataDetectorTypes = UIDataDetectorTypeAll; locationTextView.text = location; locationTextView.font = [UIFont fontWithName:@"AvenirNext-Regular" size:17]; locationTextView.editable = NO; locationTextView.userInteractionEnabled = YES; locationTextView.contentInset = UIEdgeInsetsMake(-8,-8,-8,-8); locationTextView.frame =CGRectMake(kBufferLeft, daySize.height, kBufferDayViewTextWidth, locationSize.height); [scrollView addSubview:locationTextView]; 

Correcto: http://i.imgur.com/3pJ43kj.jpg

Incorrecto: http://i.imgur.com/DLq4gco.jpg

(No se permite publicar imágenes aún, lo siento.)

El mismo código exacto produjo ambos efectos. Gracias por tu time.

¡Aclamaciones!

EDIT : fui con TTTAttributedLabels para solucionar este problema.

github.com/mattt/TTTAttributedLabel

Puede establecer la fuente en <UITextField> delegar.

 -(BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text { locationTextView.font = [UIFont fontWithName:@"AvenirNext-Regular" size:17]; } 

Tuve el mismo problema porque estaba usando un salto de línea personalizado (layoutManager: shouldBreakLineByWordBeforeCharacterAtIndex :). Tuve que deshabilitar eso.