Question

Dans mon application iPhone J'ai textfield d'accepter le numéro de téléphone. Je dois afficher le numéro aux États-Unis format de numéro de téléphone. C'est comme (000) 000-0000. En règle générale comme le téléphone iPhone Contactez entrée du numéro. Comment puis-je faire ceci. Toute idée sera grandement appréciée.

Pas de solution correcte

Autres conseils

Pour la mise en forme automatique, j'ai utilisé addTarget en combinaison avec mon href="https://stackoverflow.com/users/189804/adam-eberbach"> Adam de bien vouloir référencé. La mise en œuvre est décrit .

Vous obtiendrez le numéro de téléphone de formatter

http: // the-interruption de travail beauty.blogspot.com/2010/01/locale-sensitive-phone-number.html

Ne pas oublier d'utiliser la classe PhoneNumberFormatter. Cette classe est également availabel dans ce blog

Étant donné que l'utilisateur entre le numéro de téléphone manuellement dans le champ de texte, vous pouvez utiliser la méthode UITextFieldDelegate textField:shouldChangeCharactersInRange:replacementString: pour modifier dynamiquement le numéro de téléphone entré en ajoutant « ( » avant le 1er chiffre « ) » après 3 chiffres sont entrés « - 'après 6 chiffres. (Ou) après l'entrée du numéro est fait, vous pouvez modifier le format affiché comme ceci:

- (BOOL) textFieldShouldReturn:(UITextField *)textField {
     //resign the keypad and check if 10 numeric digits entered...
     NSRange range;
     range.length = 3;
     range.location = 3;

textField.text = [NSString stringWithFormat:@"(%@)%@-%@", [textField.text substringToIndex:3], [textField.text substringWithRange:range], [textField.text substringFromIndex:6];
}
- (BOOL) textFieldShouldReturn:(UITextField *)textField {
     //resign the keypad and check if 10 numeric digits entered...
     NSRange range;
     range.length = 3;
     range.location = 3;

textField.text = [NSString stringWithFormat:@"(%@) %@-%@", [textField.text substringToIndex:3], [textField.text substringWithRange:range], [textField.text substringFromIndex:6];
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top