2010-01-13 28 views
1

我需要檢查用戶是否輸入了一個字母鍵或十進制(。)以外的任何符號。我把它放在一個if語句中,好奇是否有一個容易找到這個腳本的地方。任何幫助將不勝感激。檢查是否在iPhone SDK中使用textField中的Alpha或符號

+0

你的意思是「在」鍵?即「@」?這不是所謂的阿爾法。 – Rooke 2010-01-13 16:35:10

+0

字母a -z和除小數點符號外的所有符號。 – HollerTrain 2010-01-13 16:36:10

回答

0

構建一個NSCharacterSet您允許的字符的實例,並測試該字符串是否包含該集以外的字符。

0

可以將此方法添加到您的UITextFieldDelegate類,而這將是你每次文本輸入到文本字段時執行:

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string 
{ 
    NSCharacterSet *set = [NSCharacterSet punctuationCharacterSet]; 
    NSRange setRange = [string rangeOfCharacterFromSet:set]; 
    if (setRange.location == NSNotFound) 
    { 
     textField.textColor = [UIColor redColor]; 
    } 
    else 
    { 
     textField.textColor = [UIColor greenColor]; 
    } 
    return YES; 
}