2009-07-11 8 views
2

Comment dirais-je que si un UITextField contient @ "-", faites quelque chose. En ce moment, mon code est comme ça. Cela ne semble pas fonctionner:Comment savoir si un UITextField contient un caractère spécifique

if (MyUITextField.text == @"-") { 
    NSRange range = {0,1}; 
    [a deleteCharactersInRange:range]; 
    MyUITextField.text = MyUILabel.text; 
} 

Je sais que je fais quelque chose de très mauvais avec le code. S'il vous plaît aider.

Répondre

4

essayer de changer ==-[MyUITextField.text isEqualToString:@"-"]

comme tests == pour voir si elles sont le même objet, alors que isEqualToString compare le contenu des chaînes.

+1

Ceci vérifie si vous entrez la chaîne "-" et retournera false si vous mettez "foo-bar". – RCIX

3

En supposant que votre chaîne est définie comme:

NSString *str = @"foo-bar"; 

Pour vérifier si votre chaîne contient « - » vous pouvez effectuer les opérations suivantes:

if ([str rangeOfString:@"-"].length > 0) 
{ 
    NSLog(@"Contains -"); 
} 

Il semble que vous vouliez supprimer le premier caractère si une chaîne commence par un caractère donné. Dans ce cas, vous pouvez faire quelque chose comme ceci:

if ([str hasPrefix:@"f"]) 
{ 
    NSLog(@"Starts with f"); 
} 
Questions connexes