2011-08-05 54 views
0

我希望用戶不要在文本字段中使用任何多餘的空格。怎麼做?iPhone App中的TextField空間驗證

描述:我有一個文本字段,我正在使用「標題的東西」。我不想讓任何用戶提供額外的空間/唯一的空間。

問候

回答

3

此處爲UITextFieldDelegate的小片段:

-(BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { 
    if([[textField text] length] > 0) { 
     if([[textField text] characterAtIndex:([[textField text] length]-1)] == ' ' && 
      [string isEqualToString:@" "]) return NO; 
    } 
    return YES; 
} 
+0

超級回答!工作很棒! –

2

您能夠收到時修剪字符串:如果你要刪除的字符串我認爲這會做的伎倆內的任何雙空格

NSString *string = @" spaces in front and at the end "; 
NSString *trimmedString = [string stringByTrimmingCharactersInSet: 
           [NSCharacterSet whitespaceAndNewlineCharacterSet]]; 
NSLog(trimmedString) 

另外:

NSString *noSpaces = [[string componentsSeparatedByCharactersInSet: [NSCharacterSet whitespaceCharacterSet]] componentsJoinedByString: @" "]; 
+1

我不知道爲什麼它不是爲我工作?(我打印出來的記錄,但它給我相同的字符串。) – Akshay

+0

你可以分享你的代碼的一部分做這個? –

1

只是試試這個

NSString *t1= [txt.text stringByReplacingOccurrencesOfString:@" " withString:@""]