私のアプリでは。特殊文字を使用してテキストフィールドを検証したいのですが、
元。ユーザーが?を押した場合 ユーザーが入力できないキーパッドから?テキストフィールドで、
誰かが提案してください、どうすればそれを行うことができますか?
私のアプリでは。特殊文字を使用してテキストフィールドを検証したいのですが、
元。ユーザーが?を押した場合 ユーザーが入力できないキーパッドから?テキストフィールドで、
誰かが提案してください、どうすればそれを行うことができますか?
以下のように試してみてくださいそれはあなたを助けますそれは文字だけを受け入れます
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
//For avoiding user to enter non digital number..
if([[string stringByTrimmingCharactersInSet:[[NSCharacterSet letterCharacterSet] invertedSet]] isEqualToString:@""])
{
return NO;
}
else
{
return YES;
}
}
これを確認してください
使用する
- (BOOL) textField:(UITextField*)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString*)textEntered
これが機能するかどうかを確認してください:
-(NSString *) formatIdentificationNumber:(NSString *)string
{
NSCharacterSet * invalidNumberSet = [NSCharacterSet characterSetWithCharactersInString:@"\n_!@#$%^&*()[]{}'\".,<>:;|\\/?+=\t~` "];
NSString * result = @"";
NSScanner * scanner = [NSScanner scannerWithString:string];
NSString * scannerResult;
[scanner setCharactersToBeSkipped:nil];
while (![scanner isAtEnd])
{
if([scanner scanUpToCharactersFromSet:invalidNumberSet intoString:&scannerResult])
{
result = [result stringByAppendingString:scannerResult];
}
else
{
if(![scanner isAtEnd])
{
[scanner setScanLocation:[scanner scanLocation]+1];
}
}
}
return result;
}