Erstellen einer Stoppuhr im Iphone
Ich versuche, erstellen Sie eine einfache Stoppuhr. Ich bezog mich auf diese website ( http://www.apptite.be/tutorial_ios_stopwatch.php) zu tun diese app. Wenn ich auf die start-Taste, bekomme ich -596:-31:-23:-648 und die Stoppuhr nicht läuft.
Der code sieht wie folgt aus:
ViewController.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController{
UILabel *lbl;
NSTimer *stopTimer;
NSDate *startDate;
}
@property (strong,nonatomic) IBOutlet UILabel *lbl;
-(IBAction)startPressed:(id)sender;
-(IBAction)stopPressed:(id)sender;
-(void)updateTimer;
@end
ViewController.m
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
@synthesize lbl;
- (void)viewDidLoad
{
[super viewDidLoad];
lbl.text = @"00.00.00.000";
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
//Dispose of any resources that can be recreated.
}
-(IBAction)startPressed:(id)sender{
if (stopTimer == nil) {
stopTimer = [NSTimer scheduledTimerWithTimeInterval:1.0/10.0
target:self
selector:@selector(updateTimer)
userInfo:nil
repeats:YES];
}
}
-(IBAction)stopPressed:(id)sender{
[stopTimer invalidate];
stopTimer = nil;
//[self updateTimer];
}
-(void)updateTimer{
NSDate *currentDate = [NSDate date];
NSTimeInterval timeInterval = [currentDate timeIntervalSinceDate:startDate];
NSDate *timerDate = [NSDate dateWithTimeIntervalSince1970:timeInterval];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"HH:mm:ss.SSS"];
[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0.0]];
NSString *timeString=[dateFormatter stringFromDate:timerDate];
lbl.text = timeString;
}
@end
Müssen einige Hinweise auf die Lösung des Fehlers. Nicht sicher, wo der Fehler ist. Jede Hilfe zu schätzen wissen...
verwenden nstimer für erstellen Stoppuhr
verwendet: NSTimer *stopTimer; bereits
dies wird helfen, u techrepublic.com/blog/ios-app-builder/...
Eine Sache zuzuweisen, Eigentum und synthetisieren für stopTimer und mit sich selbst.
hinzufügen startDate = [NSDate date]; der startPressed das Problem gelöst,.. aber immer noch, wenn ich drücken Sie start erneut, wird der Wert geht auf null zurück.
verwendet: NSTimer *stopTimer; bereits
dies wird helfen, u techrepublic.com/blog/ios-app-builder/...
Eine Sache zuzuweisen, Eigentum und synthetisieren für stopTimer und mit sich selbst.
hinzufügen startDate = [NSDate date]; der startPressed das Problem gelöst,.. aber immer noch, wenn ich drücken Sie start erneut, wird der Wert geht auf null zurück.
InformationsquelleAutor lakesh | 2012-10-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gelöst der Fehler:
ViewController.h
ViewController.m
Leichte Veränderungen am code gemacht worden.. Aber es funktioniert jetzt richtig...
InformationsquelleAutor lakesh
Habe ich eine einfache Stoppuhr mit pause - /fortsetzen-Funktion. Es verwendet zwei NSDate Variablen, halten Sie die Zeit zwischen den Pausen:
Check-out die Beispiel-Projekt hier: https://github.com/kevinpk/NSStopwatch
InformationsquelleAutor Kevin Kelly