Pourquoi utiliser différents types de saisie ?

Le type de saisie au clavier nous aide à obtenir la saisie requise de l'utilisateur.

Il supprime les touches inutiles et inclut les parties requises. Les utilisateurs peuvent définir le type de saisie en utilisant la propriété keyboard de UITextField.

  • Par exemple : champ de texte (textField). keyboardType = UIKeyboardTypeDefault

Types de saisie au clavier

Type de saisie Description
UIKeyboardTypeASCIICapable Le clavier inclut tous les caractères ASCII standard.
UIKeyboardTypeNumbersAndPunctuation Le clavier affiche les chiffres et la ponctuation.
UIKeyboardTypeURL Le clavier est optimisé pour la saisie d'URL.
UIKeyboardTypeNumberPad Le clavier est utilisé pour la saisie de code PIN et affiche un pavé numérique.
UIKeyboardTypePhonePad Le clavier est optimisé pour la saisie de numéros de téléphone.
UIKeyboardTypeNamePhonePad Le clavier est utilisé pour saisir des noms ou des numéros de téléphone.
UIKeyboardTypeEmailAddress Le clavier est optimisé pour la saisie d'adresses e-mail.
UIKeyboardTypeDecimalPad Le clavier est utilisé pour saisir des nombres décimaux.
UIKeyboardTypeTwitter Le clavier est optimisé pour les symboles @ et # de Twitter.

Ajouter une méthode personnalisée 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];
}

Mettre à jour viewDidLoad dans ViewController.m comme indiqué ci-dessous

(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
}

Sortie


Maintenant, lorsque nous exécutons l'application, nous obtenons la sortie suivante :

input_types_text_fields

La sélection de différents champs de texte affichera différents claviers.

Autres extensions