2011-01-22 10 views
11

otras preguntas ...¿Cómo personalizar UITextField de esta manera?

¿Cómo puedo hacer que este campo de texto?

alt textalt text

Con la izquierda un marcador de posición FIJA con una cadena y después de ella, una zona táctil, con texto o el rectángulo azul como pantalla.

Necesito implementar una vista? ¿O hay una manera simple de hacerlo directamente en el campo de texto?

gracias de nuevo!
A

+0

También puede probar este método. Esto te ayuda. http://www.icodeblog.com/2010/01/04/uitextfield-a-complete-api-overview/ –

Respuesta

42

¡Tengo la solución!

UITextField tienen una propiedad llamada leftView y rightView!

Aquí está el código:

UILabel *lbl = [[UILabel alloc] initWithFrame:CGRectMake(1, 1, 60, 25) ]; 
[lbl setText:@"Partenza:"]; 
[lbl setFont:[UIFont fontWithName:@"Verdana" size:12]]; 
[lbl setTextColor:[UIColor grayColor]]; 
[lbl setTextAlignment:NSTextAlignmentRight]; 
_txtFrom.leftView = lbl; 
_txtFrom.leftViewMode = UITextFieldViewModeAlways; 
_txtFrom.delegate = self; 

y este es el resultado:
enter image description here

+0

Solo quería señalar que la verdadera magia aquí es: _txtFrom.leftViewMode = UITextFieldViewModeAlways ;. En la documentación de Apple, verá que leftViewMode está predeterminado en UITextFieldViewModeNever, por lo que sin esa línea probablemente se rasque la cabeza. –