Tipos de entrada - Campos de texto

Por que tipos de entrada?

Os tipos de entrada do teclado nos ajudam a obter a entrada necessária do usuário. Ele remove as chaves indesejadas e inclui as necessárias. Podemos definir o tipo de entrada que o usuário pode fornecer usando a propriedade de teclado de UITextField.

  • Por exemplo: textField. keyboardType = UIKeyboardTypeDefault

Tipos de entrada de teclado

Sr. Não. Tipo de entrada e descrição
1

UIKeyboardTypeASCIICapable

O teclado inclui todos os caracteres ASCII padrão.

2

UIKeyboardTypeNumbersAndPunctuation

O teclado exibe números e pontuações assim que são exibidos.

3

UIKeyboardTypeURL

O teclado é otimizado para entrada de URL.

4

UIKeyboardTypeNumberPad

O teclado é usado para entrada de PIN e mostra um teclado numérico.

5

UIKeyboardTypePhonePad

O teclado é otimizado para inserir números de telefone.

6

UIKeyboardTypeNamePhonePad

O teclado é usado para inserir o nome ou número de telefone.

7

UIKeyboardTypeEmailAddress

O teclado é otimizado para inserir endereços de e-mail.

8

UIKeyboardTypeDecimalPad

O teclado é usado para inserir números decimais.

9

UIKeyboardTypeTwitter

O teclado é otimizado para twitter com os símbolos @ e #.

Adicionar um método personalizado addTextFieldWithDifferentKeyboard

-(void) addTextFieldWithDifferentKeyboard {

   UITextField *textField1= [[UITextField alloc]initWithFrame: 
   CGRectMake(20, 50, 280, 30)];
   textField1.delegate = self;
   textField1.borderStyle = UITextBorderStyleRoundedRect;
   textField1.placeholder = @"Default Keyboard";
   [self.view addSubview:textField1];

   UITextField *textField2 = [[UITextField alloc]initWithFrame:
   CGRectMake(20, 100, 280, 30)];
   textField2.delegate = self;
   textField2.borderStyle = UITextBorderStyleRoundedRect;
   textField2.keyboardType = UIKeyboardTypeASCIICapable;
   textField2.placeholder = @"ASCII keyboard";
   [self.view addSubview:textField2];

   UITextField *textField3 = [[UITextField alloc]initWithFrame:
   CGRectMake(20, 150, 280, 30)];
   textField3.delegate = self;
   textField3.borderStyle = UITextBorderStyleRoundedRect;
   textField3.keyboardType = UIKeyboardTypePhonePad;
   textField3.placeholder = @"Phone pad keyboard";
   [self.view addSubview:textField3];

   UITextField *textField4 = [[UITextField alloc]initWithFrame:
   CGRectMake(20, 200, 280, 30)];
   textField4.delegate = self;
   textField4.borderStyle = UITextBorderStyleRoundedRect;
   textField4.keyboardType = UIKeyboardTypeDecimalPad;
   textField4.placeholder = @"Decimal pad keyboard";
   [self.view addSubview:textField4];

   UITextField *textField5= [[UITextField alloc]initWithFrame:
   CGRectMake(20, 250, 280, 30)];
   textField5.delegate = self;
   textField5.borderStyle = UITextBorderStyleRoundedRect;
   textField5.keyboardType = UIKeyboardTypeEmailAddress;
   textField5.placeholder = @"Email keyboard";
   [self.view addSubview:textField5];

   UITextField *textField6= [[UITextField alloc]initWithFrame:
   CGRectMake(20, 300, 280, 30)];
   textField6.delegate = self;
   textField6.borderStyle = UITextBorderStyleRoundedRect;
   textField6.keyboardType = UIKeyboardTypeURL;
   textField6.placeholder = @"URL keyboard";
   [self.view addSubview:textField6];
}

Atualize viewDidLoad em ViewController.m da seguinte forma -

(void)viewDidLoad {
   [super viewDidLoad];
   //The custom method to create textfield with different keyboard input
   [self addTextFieldWithDifferentKeyboard];
   //Do any additional setup after loading the view, typically from a nib
}

Resultado

Quando executarmos o aplicativo, obteremos a seguinte saída -

Veremos diferentes teclados exibidos ao selecionar cada um dos campos de texto.