让UITextFeld输入的时候和输入银行卡一样的格式
来源:互联网 发布:菲诗小铺的洗发水知乎 编辑:程序博客网 时间:2024/05/22 12:49
#import "ViewController.h"
#define NUMBERS @"0123456789"
@interface ViewController () <UITextFieldDelegate> {
UITextField * _numberFielde;
UILabel *_numLabel;
}
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
_numberFielde = [[UITextField alloc] initWithFrame:CGRectMake(0, 100,self.view.frame.size.width, 50)];
_numberFielde.layer.borderColor = [UIColor grayColor].CGColor;
_numberFielde.layer.borderWidth = 1.0f;
_numberFielde.delegate = self;
_numberFielde.placeholder = @"请输入数字";
[_numberFielde becomeFirstResponder];
[self.view addSubview:_numberFielde];
UIButton *button = [UIButton buttonWithType:UIButtonTypeSystem];
button.frame = CGRectMake(100, 200, 100, 30);
[button addTarget:self action:@selector(getNum) forControlEvents:UIControlEventTouchUpInside];
[button setTitle:@"取得数字" forState:UIControlStateNormal];
[self.view addSubview:button];
_numLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 250, self.view.frame.size.width, 50)];
_numLabel.textAlignment = NSTextAlignmentCenter;
[self.view addSubview:_numLabel];
}
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
NSCharacterSet *cs = [[NSCharacterSet characterSetWithCharactersInString:NUMBERS] invertedSet];
NSString *filtered = [[string componentsSeparatedByCharactersInSet:cs] componentsJoinedByString:@""];
BOOL basicTest = [string isEqualToString:filtered];
if (basicTest) {
if (textField == _numberFielde) {
//四位加一个空格
if ([string isEqualToString:@""]) { //删除字符
if ((textField.text.length - 2) % 5 == 0) {
textField.text = [textField.text substringToIndex:textField.text.length - 1];
}
return YES;
} else {
if (textField.text.length % 5 == 0) {
textField.text = [NSString stringWithFormat:@"%@ ", textField.text];
}
}
return YES;
}
} else {
return NO;
}
return YES;
}
- (void)getNum {
_numLabel.text = [self deleteSpace];
}
- (NSString *)deleteSpace {
NSString *username =_numberFielde.text;
username = [username stringByReplacingOccurrencesOfString:@" " withString:@""];
return username;
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
}
@end
- 让UITextFeld输入的时候和输入银行卡一样的格式
- JS 银行卡格式输入框
- 规范银行卡输入格式,四位四位输入
- 让浏览器弹出像FTP访问服务器一样的用户名和密码输入框
- iOS--输入银行卡号的时候,对数字格式化,每四个数后面加个“-”
- 判断用户输入的银行卡号是否正确--基于Luhn算法的格式校验
- 富文本编辑器中如何让一个Div变成像输入框一样可输入的?
- 对输入框进行输入的时候有时候需要判断输入的是不是数字或者不只让他输入数字
- rtsp 客户端请求视频的时候支持输入用户名和密码的格式
- rtsp 客户端请求视频的时候顺便填写输入用户名和密码的格式
- 银行卡输入
- 如何让weblogic启动的时候不用输入用户和密码?
- android输入框EditText输入银行卡,输入手机,输入身份证格式化的实现
- JS 银行卡格式 输入框(二)
- JS 输入框银行卡格式 (三)
- 输入大数据的时候,输入加速。
- 帐号和密码输入框的大小一样
- scanf的格式输入
- echart.js 点击饼图跳转
- 随笔而已
- canvas画水球
- 跟黑马程序员一起玩转Android N
- Fragment、ViewPager、ActionBar实现TAB导航条效果
- 让UITextFeld输入的时候和输入银行卡一样的格式
- 判断当前最上层的应用的方法
- PV 线程同步和多线程问题
- 两分钟彻底让你明白Android Activity生命周期(图文)!
- Java-集合
- UiAutomator简单实例----进入Settings->Language&input
- 凸优化交替方向乘子法
- 揭开源码的神秘面纱,让源码从此无处藏身
- mac 安装Photoshop CS6 MAC 中文版破解版(支持Retina屏)