最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS 中 使用UITextField格式化銀行卡號(hào)碼的解決方案

 更新時(shí)間:2016年12月14日 09:12:18   作者:烏鴉白WHITECROW  
今天小編給大家分享ios中使用UITextField格式化銀行卡號(hào)碼的實(shí)現(xiàn)思路詳解,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下

今天做格式化銀行卡,避免重復(fù)造輪子,找度娘查了下,看到一個(gè)不錯(cuò)的實(shí)現(xiàn)方式,記錄下來(lái),并附帶實(shí)現(xiàn)思路

#pragma mark - UITextFieldDelegate UITextField鍵入字符后調(diào)用
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
 //拿到為改變前的字符串
 NSString *text = [textField text];
 //鍵入字符集,\b標(biāo)示刪除鍵
 NSCharacterSet *characterSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789\b"];
 //對(duì)當(dāng)前鍵入字符進(jìn)行空格過(guò)濾
 string = [string stringByReplacingOccurrencesOfString:@" " withString:@""];
 //invertedSet會(huì)對(duì)當(dāng)前結(jié)果集取反,檢查當(dāng)前鍵入字符是否在字符集合中,如果不在則直接返回NO 不改變textField值
 if ([string rangeOfCharacterFromSet:[characterSet invertedSet]].location != NSNotFound) {
 return NO;
 }
 //增加當(dāng)前鍵入字符在改變前的字符串尾部
 text = [text stringByReplacingCharactersInRange:range withString:string];
 //再次確認(rèn)去掉字符串中空格
 text = [text stringByReplacingOccurrencesOfString:@" " withString:@""];
 //初始化字符用來(lái)保存格式化后的字符串
 NSString *newString = @"";
 //while中對(duì)text進(jìn)行格式化
 while (text.length > 0) {
 //按4位字符進(jìn)行截取,如果當(dāng)前字符不足4位則按照當(dāng)前字符串的最大長(zhǎng)度截取
 NSString *subString = [text substringToIndex:MIN(text.length, 4)];
 //將截取后的字符放入需要格式化的字符串中
 newString = [newString stringByAppendingString:subString];
 if (subString.length == 4) {
  //截取的字符串長(zhǎng)度滿4位則在后面增加一個(gè)空格符
  newString = [newString stringByAppendingString:@" "];
 }
 //將text中截取掉字符串去掉
 text = [text substringFromIndex:MIN(text.length, 4)];
 }
 //再次確認(rèn)過(guò)濾掉除指定字符以外的字符
 newString = [newString stringByTrimmingCharactersInSet:[characterSet invertedSet]];
 //國(guó)內(nèi)銀行卡一般為16~19位 格式化后增加4個(gè)空格 也就是最多23個(gè)字符
 if (newString.length > 23) {
 return NO;
 }
 //手動(dòng)對(duì)textField賦值
 [textField setText:newString];
 //返回NO 則不通過(guò)委托自動(dòng)往當(dāng)前字符后面增加字符,達(dá)到格式化效果
 return NO;
}

相關(guān)文章

  • iOS Label實(shí)現(xiàn)文字漸變色效果

    iOS Label實(shí)現(xiàn)文字漸變色效果

    文字漸變色可以使整體的效果更上一個(gè)檔次,最近在開(kāi)發(fā)中就遇到了這個(gè)需求,所以整理出來(lái),下面這篇文章主要給大家介紹了關(guān)于iOS Label實(shí)現(xiàn)文字漸變色效果的相關(guān)資料,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-05-05
  • iOS9提示框的正確使用方式

    iOS9提示框的正確使用方式

    這篇文章主要為大家詳細(xì)介紹了iOS9提示框的正確使用方式,iOS8升級(jí)到iOS9的過(guò)程,彈出提示框的方式有了很大的改變,感興趣的小伙伴們可以參考一下
    2016-05-05
  • iOS10 widget實(shí)現(xiàn)3Dtouch 彈出菜單

    iOS10 widget實(shí)現(xiàn)3Dtouch 彈出菜單

    這篇文章主要介紹了 iOS10 widget實(shí)現(xiàn)3Dtouch 彈出菜單的相關(guān)資料,需要的朋友可以參考下
    2016-12-12
  • iOS屏幕旋轉(zhuǎn)與鎖屏的示例代碼

    iOS屏幕旋轉(zhuǎn)與鎖屏的示例代碼

    這篇文章主要介紹了iOS屏幕旋轉(zhuǎn)與鎖屏的示例代碼,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-07-07
  • iOS實(shí)現(xiàn)設(shè)備判斷是否安裝相關(guān)地圖(百度、高德等)

    iOS實(shí)現(xiàn)設(shè)備判斷是否安裝相關(guān)地圖(百度、高德等)

    這篇文章主要給大家介紹了關(guān)于iOS如何實(shí)現(xiàn)設(shè)備判斷是否安裝相關(guān)地圖,比如百度、高德等,其實(shí)實(shí)現(xiàn)的方法還是很簡(jiǎn)單,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友下面來(lái)一起看看吧。
    2018-01-01
  • iOS彈幕開(kāi)發(fā)中遇到的問(wèn)題匯總

    iOS彈幕開(kāi)發(fā)中遇到的問(wèn)題匯總

    最近做項(xiàng)目的時(shí)候需要實(shí)現(xiàn)彈幕這個(gè)功能, 雖然感覺(jué)實(shí)現(xiàn)起來(lái)也不是很復(fù)雜,但還是遇到了一些問(wèn)題,下面這篇文章主要給大家總結(jié)介紹了在iOS彈幕開(kāi)發(fā)中遇到的問(wèn)題,文中將解決的方法介紹的非常詳細(xì),需要的朋友可以參考下。
    2018-01-01
  • 詳解IOS宏與常量的使用(define,const)

    詳解IOS宏與常量的使用(define,const)

    這篇文章主要介紹了詳解IOS宏define與常量const的使用方法,適合IOS程序員參考,一起來(lái)學(xué)習(xí)下。
    2017-12-12
  • iOS 隱私權(quán)限和通過(guò)openURL實(shí)現(xiàn)跳轉(zhuǎn)實(shí)例

    iOS 隱私權(quán)限和通過(guò)openURL實(shí)現(xiàn)跳轉(zhuǎn)實(shí)例

    這篇文章主要介紹了iOS 隱私權(quán)限和通過(guò)openURL實(shí)現(xiàn)跳轉(zhuǎn)實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06
  • ios的手勢(shì)操作之UIGestureRecognizer淺析(推薦)

    ios的手勢(shì)操作之UIGestureRecognizer淺析(推薦)

    本篇文章主要介紹了ios的手勢(shì)操作之UIGestureRecognizer淺析,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。
    2016-12-12
  • iOS中的UISlider滑塊組件用法總結(jié)

    iOS中的UISlider滑塊組件用法總結(jié)

    不僅是滑動(dòng)開(kāi)關(guān),UISlider組件也是常用的進(jìn)度條制作工具,這里我們就一起來(lái)看一下iOS中的UISlider滑塊組件用法總結(jié),需要的朋友可以參考下
    2016-06-06

最新評(píng)論

寿光市| 靖州| 石狮市| 五峰| 乌拉特中旗| 安庆市| 武邑县| 呼伦贝尔市| 左贡县| 乌恰县| 华宁县| 都兰县| 古交市| 石泉县| 阿坝| 新疆| 略阳县| 江城| 台湾省| 望谟县| 巨野县| 常山县| 沧州市| 仪陇县| 望谟县| 新绛县| 杭锦旗| 黄平县| 平度市| 泽库县| 新兴县| 马龙县| 东乌珠穆沁旗| 鄂伦春自治旗| 通城县| 永昌县| 招远市| 白玉县| 台东县| 五家渠市| 阳江市|