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

IOS開發(fā)代碼分享之用nstimer實現(xiàn)倒計時功能

 更新時間:2014年09月18日 09:26:18   投稿:hebedich  
在制作IOS項目中,我們經(jīng)常要用到倒計時功能,今天就分享下使用nstimer實現(xiàn)的倒計時功能的代碼,希望對大家能有所幫助

用nstimer實現(xiàn)倒計時功能,廢話不多說,直接上代碼,詳細解釋請參照注釋

// 
[NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerFireMethod:) userInfo:nil repeats:YES]; 
 
// 
- (void)timerFireMethod:(NSTimer *)theTimer 
{ 
    BOOL timeStart = YES; 
    NSCalendar *cal = [NSCalendar currentCalendar];//定義一個NSCalendar對象 
    NSDateComponents *endTime = [[NSDateComponents alloc] init];    //初始化目標(biāo)時間... 
    NSDate *today = [NSDate date];    //得到當(dāng)前時間 
     
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; 
    NSDate *dateString = [dateFormatter dateFromString:todate]; 
    NSString *overdate = [dateFormatter stringFromDate:dateString]; 
//    NSLog(@"overdate=%@",overdate); 
    static int year; 
    static int month; 
    static int day; 
    static int hour; 
    static int minute; 
    static int second; 
    if(timeStart) {//從NSDate中取出年月日,時分秒,但是只能取一次 
        year = [[overdate substringWithRange:NSMakeRange(0, 4)] intValue]; 
        month = [[overdate substringWithRange:NSMakeRange(5, 2)] intValue]; 
        day = [[overdate substringWithRange:NSMakeRange(8, 2)] intValue]; 
        hour = [[overdate substringWithRange:NSMakeRange(11, 2)] intValue]; 
        minute = [[overdate substringWithRange:NSMakeRange(14, 2)] intValue]; 
        second = [[overdate substringWithRange:NSMakeRange(17, 2)] intValue]; 
        timeStart= NO; 
    } 
     
    [endTime setYear:year]; 
    [endTime setMonth:month]; 
    [endTime setDay:day]; 
    [endTime setHour:hour]; 
    [endTime setMinute:minute]; 
    [endTime setSecond:second]; 
    NSDate *overTime = [cal dateFromComponents:endTime]; //把目標(biāo)時間裝載入date 
    //用來得到具體的時差,是為了統(tǒng)一成北京時間 
    unsigned int unitFlags = NSYearCalendarUnit| NSMonthCalendarUnit| NSDayCalendarUnit| NSHourCalendarUnit| NSMinuteCalendarUnit| NSSecondCalendarUnit; 
    NSDateComponents *d = [cal components:unitFlags fromDate:today toDate:overTime options:0]; 
    NSString *t = [NSString stringWithFormat:@"%d", [d day]]; 
    NSString *h = [NSString stringWithFormat:@"%d", [d hour]]; 
    NSString *fen = [NSString stringWithFormat:@"%d", [d minute]]; 
    if([d minute] < 10) { 
        fen = [NSString stringWithFormat:@"0%d",[d minute]]; 
    } 
    NSString *miao = [NSString stringWithFormat:@"%d", [d second]]; 
    if([d second] < 10) { 
        miao = [NSString stringWithFormat:@"0%d",[d second]]; 
    } 
//    NSLog(@"===%@天 %@:%@:%@",t,h,fen,miao); 
    [_longtime setText:[NSString stringWithFormat:@"%@天 %@:%@:%@",t,h,fen,miao]]; 
    if([d second] > 0) { 
        //計時尚未結(jié)束,do_something 
//        [_longtime setText:[NSString stringWithFormat:@"%@:%@:%@",d,fen,miao]]; 
    } else if([d second] == 0) { 
        //計時結(jié)束 do_something 
         
    } else{ 
//計時器失效
        [theTimer invalidate]; 
    } 
     
}

相關(guān)文章

  • 詳解iOS的數(shù)據(jù)存儲

    詳解iOS的數(shù)據(jù)存儲

    本文介紹iOS中常用的應(yīng)用數(shù)據(jù)存儲方式及其詳細用法,內(nèi)容很全面和詳細,對大家在IOS開發(fā)中很有幫助,下面一起來看看。
    2016-08-08
  • ios原生二維碼掃描與生成的實現(xiàn)教程

    ios原生二維碼掃描與生成的實現(xiàn)教程

    這篇文章主要給大家介紹了關(guān)于ios原生二維碼掃描與生成的相關(guān)資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • iOS開發(fā)定時器的三種方法分享

    iOS開發(fā)定時器的三種方法分享

    相信在大家開發(fā)過程中,常常需要在某個時間后執(zhí)行某個方法,或者是按照某個周期一直執(zhí)行某個方法。在這個時候,我們就需要用到定時器。然而,在iOS中有很多方法完成以上的任務(wù),到底有多少種方法呢?下面就通過這篇文章來一起學(xué)習(xí)學(xué)習(xí)吧。
    2016-09-09
  • 詳解iOS14 Widget 開發(fā)相關(guān)及易報錯地方處理

    詳解iOS14 Widget 開發(fā)相關(guān)及易報錯地方處理

    這篇文章主要介紹了詳解iOS14 Widget 開發(fā)相關(guān)及易報錯地方處理,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • iOS如何將字符串中特定后的字變成紅色

    iOS如何將字符串中特定后的字變成紅色

    這篇文章主要介紹了iOS將字符串中特定后的字變成紅色的實例代碼,非常不錯,具有參考借鑒價值,需要的朋友參考下吧
    2017-07-07
  • 匯總ios開發(fā)逆向傳值的方法

    匯總ios開發(fā)逆向傳值的方法

    這篇文章主要為大家匯總了ios開發(fā)逆向傳值的方法,感興趣的小伙伴們可以參考一下
    2016-03-03
  • iOS單例的創(chuàng)建與銷毀示例

    iOS單例的創(chuàng)建與銷毀示例

    本篇文章主要介紹了iOS單例的創(chuàng)建與銷毀示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-02-02
  • swift 單例的實現(xiàn)方法及實例

    swift 單例的實現(xiàn)方法及實例

    這篇文章主要介紹了swift 單例的實現(xiàn)方法及實例的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • Xcode清理緩存和垃圾文件的教程

    Xcode清理緩存和垃圾文件的教程

    下面小編就為大家分享一篇Xcode清理緩存和垃圾文件的教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • 淺談iOS開發(fā)中static變量的三大作用

    淺談iOS開發(fā)中static變量的三大作用

    下面小編就為大家?guī)硪黄獪\談iOS開發(fā)中static變量的三大作用。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03

最新評論

淮南市| 甘谷县| 阳城县| 滕州市| 五莲县| 望奎县| 大连市| 内丘县| 扶沟县| 广汉市| 普兰店市| 霸州市| 大厂| 武川县| 新津县| 通江县| 临漳县| 昌乐县| 大城县| 陆河县| 甘南县| 东莞市| 克什克腾旗| 南安市| 孟连| 滦南县| 壤塘县| 香河县| 宿州市| 莆田市| 吴忠市| 鹤岗市| 曲周县| 承德县| 进贤县| 勃利县| 宁海县| 五寨县| 长阳| 徐汇区| 南通市|