zoukankan      html  css  js  c++  java
  • IOS 键盘 禁止输入字母

    在开发中有时候需要数字键盘,但是设置textfield为默认数字键后,

    在模拟器上如果用电脑键盘仍然可以输入字母,

    在真机上如果使用搜狗等其他输入法也可能会出现可以输入字母的情况。解决方法如下,在textfield的代理方法中实现

     1 #pragma mark - UITextFieldDelegate
     2 - (BOOL)textField:(UITextField *)theTextField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string{
     3     //禁止用户输入字母
     4     NSCharacterSet *myCharSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789"];
     5     for (int i = 0; i < [string length]; i++) {
     6         unichar c = [string characterAtIndex:i];
     7         if (![myCharSet characterIsMember:c]) {
     8             return NO;
     9         }
    10     }
    11     
    12     //处理第一个数字为小数点或者0的情况
    13     NSString *text = theTextField.text;
    14     NSString *passcode = [text stringByReplacingCharactersInRange:range withString:string];
    15     if ([passcode hasPrefix:@"."])
    16     {
    17         return NO;
    18     }
    19     
    20     
    21     //处理小数点两位后的情况
    22     if (!([theTextField.text rangeOfString:@"."].location == NSNotFound)) {
    23         NSArray *comArray = nil;
    24         comArray = [passcode componentsSeparatedByString:@"."];
    25         if (([comArray count] > 1) && ([comArray[1] length] > 2))
    26         {
    27             return NO;
    28         }
    29         
    30     }
    31     
    32     //处理两个以上小数点的情况
    33     if ([string isEqualToString:@"."])
    34     {
    35         //        if ([text containsString:@"."])
    36         if(!([text rangeOfString:@"."].location == NSNotFound))
    37         {
    38             return NO;
    39         }
    40     }
    41     
    42     return YES;
    43 }
  • 相关阅读:
    go http client, http server
    如何使用Django 启动命令行及执行脚本
    golang cannot assign to
    非root用户执行程序---sudo的使用
    kafka 安装与配置
    golang kafka client
    Python处理Excel文档之openpyxl
    Windows下安装使用Pypcap
    xlutils模块
    Python xlrd、xlwt、xlutils修改Excel文件
  • 原文地址:https://www.cnblogs.com/zhhl/p/5191818.html
Copyright © 2011-2022 走看看