美文网首页
LHPhoneTextField,定制手机号的输入

LHPhoneTextField,定制手机号的输入

作者: 独孤流 | 来源:发表于2017-08-31 17:27 被阅读40次

前言

在开发中经常遇到各种需要输入手机号的地方,而每遇到一个地方就要专门写一套代码来验证手机号输入的位数及开始几位是否正确,有时为了显示的好看明显,还需要把手机号进行3-4-4这种方式显示,现在特写了LHPhoneTextFiled来支持这种特定的需求,非常感谢phoneTextField提供非常好的思路

1、 使用LHPHoneTextField非常简单,支持设置3-4-4中间的这个分隔符lh_seperatorText,设置不标准手机字符串自动标准显示
2、而用lh_text来设置默认显示的手机号
3、而用lh_text来获取的手机号时标准的全数字手机号,不需要进行任何判断,使用非常简单,效果如下图:
4、提供一个方法判断手机号是否是标准手机号lh_IsValidatePhone
5、提供方法直接拨打电话lh_callCurrentPhone

LHPhoneTextField.gif

使用方式

因为本身是继承自UITextField,所以使用起来是一样的,唯一的区别是使用lh_seperatorText来设置3-4-4的分隔符,默认分隔符是-,
要设置默认的手机号时使用lh_text设置要显示的手机号,而要获取完整的全数字的手机号也需要使用lh_text获取,具体使用如下:

@interface LHPhoneTextFieldSampleViewController ()
@property (nonatomic,strong) LHPhoneTextField * phoneTextField2;
@end

@implementation LHPhoneTextFieldSampleViewController
- (void)viewDidLoad {
self.phoneTextField2 = [[LHPhoneTextField alloc] initWithFrame:CGRectMake(90, 175, 200, 30)];
    self.phoneTextField2.layer.masksToBounds = YES;
    self.phoneTextField2.layer.borderColor = [UIColor redColor].CGColor;
    self.phoneTextField2.layer.borderWidth = 1;
    self.phoneTextField2.clearButtonMode = UITextFieldViewModeWhileEditing;
    self.phoneTextField2.placeholder = @"请输入手机号";
    self.phoneTextField2.lh_seperatorText = @" ";
    
    [self.view addSubview:self.phoneTextField2];
    
    
    // 值发现变化时调用
    [self.phoneTextField2 addTarget:self action:@selector(textFild_textValueChange2) forControlEvents:UIControlEventValueChanged];
    // 只有注册了这个通知,valueChange才会改变
    //UITextFieldTextDidChangeNotification通知事件
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(textFild_textValueChange2) name:UITextFieldTextDidChangeNotification object:nil];
    
    // 默认手机号,不限制格式
    self.phoneTextField2.lh_text = @"131-12339323";
}
@end

具体demo:LH.LoveKit

知识点

1、对代理进行拦截二次触发
2、使用API sendActionsForControlEvents主动触发某个事件的所有target-action
3、获取UITextField的光标及对光标的移动

相关文章

  • LHPhoneTextField,定制手机号的输入

    前言在开发中经常遇到各种需要输入手机号的地方,而每遇到一个地方就要专门写一套代码来验证手机号输入的位数及开始几位是...

  • 【积目】注册流程

    异常情况汇总 手机号输入 1、手机号输入为空,弹窗提示“请输入手机号” 2、手机位数不是11位/手机号码不是以1开...

  • 手机号输入框自动格式化为344

    写在前面 相信大家已经看过某些手机号的输入框在输入的时候,手机号是3 4 4格式,即 输入一个手机号时,会隔成 1...

  • 常用代码

    手机号输入框

  • 注册过程

    信息:手机号、验证码、密码、昵称、性别、生日 状态:默认、输入、反馈 第一步,输入手机号 输入状态的设计:感官上的...

  • GridePasswordView的输入框

    1.微信支付输入框的输入效果 手机号的中间4位可以输入和删除,点击手机号位置可以弹出输入框。看着很简单,其实自己写...

  • 2022-01-27

    iOS UITextField输入框实现输入手机号时自动添加空格 前景:需求很简单,输入框手机号自动加空格,度娘方...

  • react-native登录页面切换TextInput输入框时保

    1、现象 首次点击输入框(输入手机号码)时,键盘弹出,输完手机号码后,点击输入验证码的输入框时,键盘收起,需要再次...

  • 关于HTML5中input的使用攻略

    1、手机号专用输入框 当我们需要在移动端输入手机号时,输入框需要满足1.输入类型只能是数字2.输入长度为11位3....

  • MOVE鲜花送

    点击链接,输入手机号注册

网友评论

      本文标题:LHPhoneTextField,定制手机号的输入

      本文链接:https://www.haomeiwen.com/subject/xyaqjxtx.html