2009-10-08 15 views
5

Cómo incluir el texto readonly dentro de un UITextField. Por ejemplo, los campos "Nombre" y "Seguridad" en la configuración "Otras redes" del iPod touch contienen, respectivamente, las palabras "Nombre" y "Seguridad", con un área editable a la derecha. UITextField tiene una propiedad de "marcador de posición", pero desaparece tan pronto como escribo.Poner un título de solo lectura en un UITextField

Respuesta

2

Lo que está viendo en esos campos no es que el UITextField tenga una etiqueta sino que UITableViewCell tiene dos controles: una etiqueta y un campo de texto sin borde.

+0

que sólo es necesario tener dos campos de texto así que estaba esperando para evitar tener que implementar un UITableView. –

+0

No es realmente incorrecto o difícil implementar un UITableView para alojar dos campos de texto, y tener control sobre UITableViewCell para las etiquetas es una ventaja. – rein

+0

En realidad, no necesita implementar un UITableView. Simplemente agregue un UILabel y un UITextField (sin borde) –

5

En pocas palabras esta línea en la que es objeto de txtnameUITextField:

txtName.userInteractionEnabled = NO; 
+0

Eso hace que el texto del campo de texto no sea editable, pero la pregunta original era sobre tener una etiqueta adjunta antes del campo de texto sin tener que crear un segundo control. +1 de mi parte –

0

Posición una UILabel dentro del marco de su UITextField en la que desea, a continuación, establezca la propiedad UITextFields "leftView" al UILabel. Asegúrese de que se establece la propiedad UITextFields "leftViewMode" a UITextFieldViewModeAlways

El Código debe ser algo como esto ..

UITextField *textField = [[UITextField alloc] initWithFrame:CGRectMake(20, 20, 200, 44)]; 
textField.backgroundColor = [UIColor whiteColor]; 
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 50, textField.frame.size.height)]; 
label.font = [UIFont boldSystemFontOfSize:14.0f]; 
label.text = @"Name:"; 
textField.leftView = label; 
textField.leftViewMode = UITextFieldViewModeAlways; 
[self.view addSubview:textField]; 
Cuestiones relacionadas