viernes, 26 de junio de 2015

Crear un formulario en iOS nivel PRO con UITextField. Parte II.

Continuamos a partir del anterior artículo, el cual podréis ver pulsando aquí. Lo primero que haremos será crear dos nuevos UITextFields para introducir una contraseña y un email.

@property (nonatomic, strong) UITextField *passWordTextField;
@property (nonatomic, strong) UITextField *mailTextField;

Les añadiremos nuevas características como la introducción de datos en modo oculto para la contraseña y un botón de borrado.

    [mailTextField setDelegate:self];
    [mailTextField setPlaceholder:@"Email"];
    [mailTextField setKeyboardType:UIKeyboardTypeEmailAddress];
    [mailTextField setReturnKeyType:UIReturnKeyDone];
    [mailTextField setBorderStyle:UITextBorderStyleLine];
    [mailTextField setClearButtonMode:UITextFieldViewModeAlways];
    
    [self.view addSubview:mailTextField];
    
    [passWordTextField setDelegate:self];
    [passWordTextField setPlaceholder:@"Contraseña"];
    [passWordTextField setKeyboardType:UIKeyboardTypeEmailAddress];
    [passWordTextField setReturnKeyType:UIReturnKeyDone];
    [passWordTextField setBorderStyle:UITextBorderStyleBezel];
    [passWordTextField setSecureTextEntry:YES];
    [passWordTextField setClearButtonMode:UITextFieldViewModeWhileEditing];
    

    [self.view addSubview:passWordTextField];




A continuación editaremos algunos elementos gráficos del UITexField. Por defecto tiene cuatro tipos de borde, aunque en próximos artículos explicaré como aumentar estas posibilidades a infinito. También le indicaremos el botón de retorno y el tipo de aspecto que queremos que tenga el teclado.
Tras ejecutar el código y comprobar los métodos del delegado del UITextField la primera duda que nos surgirá será cómo diferenciar los diferentes UITextField.


- (BOOL)textFieldShouldClear:(UITextField *)textField
{
    if([textField isEqual:mailTextField])
        [mailTextField setText:@""];
        
    else if(textField == passWordTextField)
        passWordTextField.text = @"";
    return NO;

}



Las dos fórmulas utilizadas en el código anterior son correctas. Si lo que queremos es que al pulsar el botón de borrado siempre se borre el texto del UITextField seleccionado bastará con devolver un TRUE.

Como ya comenté en el anterior artículo, iré subiendo el código al siguiente enlace de GitHub
https://github.com/ManuelManzanera/FormularioViewController

No hay comentarios:

Publicar un comentario