Here are simple solutions to your problem.
ads
@interface ViewController : UIViewController { IBOutlet UILabel * result; NSTimer * timer; int currentTime; } - (void)populateLabelwithTime:(int)milliseconds; -(IBAction)start; -(IBAction)pause; @end
Definition
- (void)viewDidLoad { [super viewDidLoad]; currentTime = 270000000; // Since 75 hours = 270000000 milli seconds } -(IBAction)start{ timer = [NSTimer scheduledTimerWithTimeInterval:.01 target:self selector:@selector(updateTimer:) userInfo:nil repeats:YES]; } -(IBAction)pause{ [timer invalidate]; } - (void)updateTimer:(NSTimer *)timer { currentTime -= 10 ; [self populateLabelwithTime:currentTime]; } - (void)populateLabelwithTime:(int)milliseconds { int seconds = milliseconds/1000; int minutes = seconds / 60; int hours = minutes / 60; seconds -= minutes * 60; minutes -= hours * 60; NSString * result1 = [NSString stringWithFormat:@"%@%02dh:%02dm:%02ds:%02dms", (milliseconds< 0?@ "-":@""), hours, minutes, seconds,milliseconds%1000]; result.text = result1; }
source share