iOS-textField(銀行卡號輸入格式)

最近寫的項目有這個需求,看了別人寫的,打算自己寫一份備用

這是原文[http://blog.csdn.net/h3c4lenovo/article/details/8515304]

  • 第一步需要有一個textField,遵守協(xié)議,實現(xiàn)代理
    self.mytextfield.delegate = self;
    -然后需要實現(xiàn)的代理方法就是這個
    - (BOOL)textField:(UITextField )textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString )string{
    //判斷是否是當前輸入框
    if (self.mytextfield == textField) {
    NSString text = self.mytextfield.text;
    //限制字符 至于那個\b用在search中 寫不寫都行
    NSCharacterSet
    characterSet = [NSCharacterSet characterSetWithCharactersInString:@"0123456789\b"];
    //去掉空格
    string = [string stringByReplacingOccurrencesOfString:@" " withString:@""];
    //檢查除數(shù)字之外的字符 invertedSet:意思是取反,除了數(shù)字和退格的內(nèi)容
    if ([string rangeOfCharacterFromSet:[characterSet invertedSet]].location != NSNotFound) {
    return NO;
    }
    //拼接text 要輸入的部分+原有的
    text = [text stringByReplacingCharactersInRange:range withString:string];
    //去空格
    text = [text stringByReplacingOccurrencesOfString:@" " withString:@""];
    NSString
    newString = @"";
    //四位添加空格
    while (text.length > 0) {
    NSString
    subString = [text substringToIndex:MIN(text.length, 4)];
    newString = [newString stringByAppendingString:subString];
    if (subString.length == 4) {
    newString = [newString stringByAppendingString:@" "];
    }
    text = [text substringFromIndex:MIN(text.length, 4)];
    }
    //去掉除數(shù)字部分
    newString = [newString stringByTrimmingCharactersInSet:[characterSet invertedSet]];
    // 限制長度
    if (newString.length >= 24) {
    return NO;
    }
    //賦值
    [self.mytextfield setText:newString];
    return NO;
    }
    return YES;
    }

基本就是這樣,注釋寫的很詳細了

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子版述,更是在濱河造成了極大的恐慌棉饶,老刑警劉巖烙如,帶你破解...
    沈念sama閱讀 221,695評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件为牍,死亡現(xiàn)場離奇詭異,居然都是意外死亡风秤,警方通過查閱死者的電腦和手機骨稿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,569評論 3 399
  • 文/潘曉璐 我一進店門笨鸡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來姜钳,“玉大人,你說我怎么就攤上這事形耗「缜牛” “怎么了?”我有些...
    開封第一講書人閱讀 168,130評論 0 360
  • 文/不壞的土叔 我叫張陵激涤,是天一觀的道長拟糕。 經(jīng)常有香客問我,道長倦踢,這世上最難降的妖魔是什么送滞? 我笑而不...
    開封第一講書人閱讀 59,648評論 1 297
  • 正文 為了忘掉前任,我火速辦了婚禮辱挥,結(jié)果婚禮上犁嗅,老公的妹妹穿的比我還像新娘。我一直安慰自己晤碘,他們只是感情好褂微,可當我...
    茶點故事閱讀 68,655評論 6 397
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著哼蛆,像睡著了一般蕊梧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上腮介,一...
    開封第一講書人閱讀 52,268評論 1 309
  • 那天,我揣著相機與錄音端衰,去河邊找鬼叠洗。 笑死,一個胖子當著我的面吹牛旅东,可吹牛的內(nèi)容都是我干的灭抑。 我是一名探鬼主播,決...
    沈念sama閱讀 40,835評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼抵代,長吁一口氣:“原來是場噩夢啊……” “哼腾节!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起荤牍,我...
    開封第一講書人閱讀 39,740評論 0 276
  • 序言:老撾萬榮一對情侶失蹤案腺,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后康吵,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體劈榨,經(jīng)...
    沈念sama閱讀 46,286評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,375評論 3 340
  • 正文 我和宋清朗相戀三年晦嵌,在試婚紗的時候發(fā)現(xiàn)自己被綠了同辣。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拷姿。...
    茶點故事閱讀 40,505評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖旱函,靈堂內(nèi)的尸體忽然破棺而出响巢,到底是詐尸還是另有隱情,我是刑警寧澤棒妨,帶...
    沈念sama閱讀 36,185評論 5 350
  • 正文 年R本政府宣布踪古,位于F島的核電站,受9級特大地震影響靶衍,放射性物質(zhì)發(fā)生泄漏灾炭。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,873評論 3 333
  • 文/蒙蒙 一颅眶、第九天 我趴在偏房一處隱蔽的房頂上張望蜈出。 院中可真熱鬧,春花似錦涛酗、人聲如沸铡原。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,357評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽燕刻。三九已至,卻和暖如春剖笙,著一層夾襖步出監(jiān)牢的瞬間卵洗,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,466評論 1 272
  • 我被黑心中介騙來泰國打工弥咪, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留过蹂,地道東北人。 一個月前我還...
    沈念sama閱讀 48,921評論 3 376
  • 正文 我出身青樓聚至,卻偏偏與公主長得像酷勺,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子扳躬,可洞房花燭夜當晚...
    茶點故事閱讀 45,515評論 2 359

推薦閱讀更多精彩內(nèi)容