2009-07-05 22 views
5

Casi en todas partes del iPhone, puede escribir texto y el sistema operativo reconocerá una parte del texto que se convertirá en hipervínculos (por ejemplo, números de teléfono, direcciones de correo electrónico). Sin embargo, probé esto en mi propia aplicación con un UILabel y no funciona. ¿Cómo activo esto?Cómo analizar y mostrar hipervínculos (número de teléfono/direcciones de correo electrónico, etc.) en UILabel?

¿El iphone sdk proporciona esta funcionalidad de fábrica o tengo que hacer la lógica de análisis yo mismo (lo cual es mucho trabajo)?

+0

Creo que el UILabel es una clase bastante primitiva - que prácticamente sólo muestra texto con ciertas fuentes aplicadas. Tal vez intente un UITextField? –

+0

No, simplemente lo probé, UITextField tampoco lo analiza. – erotsppa

Respuesta

16

Usted podría utilizar UITextView de la siguiente manera:

UITextView *myView = [[UITextView alloc] initWithFrame: frame]; 
myView.text = @"this is http://google.com link"; 
myView.editable = NO; 
myView.dataDetectorTypes = UIDataDetectorTypeLink; 
//cell is the TableView's cell  
[cell.contentView addSubview:myView]; 
[myView release]; 
-3

Pruébela con un UIWebView.

+1

¿Es correcto tener una gran cantidad de UIWebView en una sola pantalla? Este control se duplicará muchas veces en una tabla. Ver – erotsppa

0

Puede que desee ver las etiquetas de estilo en el proyecto Three20.

+0

Por lo que puedo ver en la fuente, que presenta texto con diferentes estilos pero no hace nada para presentar enlaces. –

+0

Si ejecuta el código de muestra de TTCatalog, hay una sección debajo de "Etiquetas con estilo" que muestra que las URL se convierten automáticamente en enlaces activos. El estilo se puede controlar a través de CSS. Es mucho más ligero que un UIWebView. Además, en "Celdas de tabla" hay una celda de enlace externo que invoca una URL externa. – Ramin

Cuestiones relacionadas