title: How to compare time in objc
body: <p>I want to a Countdown,show Day,Hour,M and S. a second is called once.</p>
  
  <pre><code>- (void)changetime {     
  
      NSCalendar *cal = [NSCalendar currentCalendar];//定义一个NSCalendar对象                 
      NSDate *today = [NSDate date];//得到当前时间
  
      unsigned int unitFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSSecondCalendarUnit;
      NSDateComponents *weekdayComponents =[cal components:(unitFlags) fromDate:self.overDate]; 
      NSDate *todate = [cal dateFromComponents:weekdayComponents]; 
      NSDateComponents *d = [cal components:unitFlags fromDate:today toDate:todate options:0];
  
      NSInteger days=[d year]*365+[d month]*31+[d day];
      if ([self.overDate earlierDate:[NSDate date]]==self.overDate) {
          [myTimer invalidate];
          myTimer=nil;
          self.labdate.text = [NSString stringWithFormat:@"%d天%d时%d分%d秒",days, [d hour], [d minute], [d second]];
          return;
      }    
      self.labdate.text = [NSString stringWithFormat:@"%d天%d时%d分%d秒",days, [d hour], [d minute], [d second]];     
  }
  
  myTimer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(changetime) userInfo:nil repeats:YES];
  
  self.overDate=[wedding date];//this is a future time
  </code></pre>