ios OC 輸入框禁止輸入空格/去掉空格/只能輸入字母和數字

weixin_34087301發表於2017-10-13

1 輸入框禁止輸入空格

  • 遵循UITextField的代理方法
  • 實現代理方法
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
    NSString *tem = [[string componentsSeparatedByCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]componentsJoinedByString:@""];
    if (![string isEqualToString:tem]) {
        return NO;
    }
    return YES;
}

2 去掉字串中的空格

  • 去掉字串中的空格
 [x stringByReplacingOccurrencesOfString:@" " withString:@""];

3 限制輸入框只能輸入字母和數字

  • 輸入框只能輸入字母和數字
//定義數字和字母的巨集
#define ALPHANUM @"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
      //只能輸入數字和字母
      NSCharacterSet *cs = [[NSCharacterSet characterSetWithCharactersInString:ALPHANUM] invertedSet];
      NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];

      if (![string isEqualToString:filtered])
       {
           return NO;
       }

      return YES;
}

相關文章