बनाना मैं एक "स्टॉप घड़ी" प्रकार की कार्यक्षमता बनाने की कोशिश कर रहा हूं। मेरे पास एक लेबल है (विलुप्त समय प्रदर्शित करने के लिए) और दो बटन (टाइमर शुरू करें और रोकें)। स्टार्ट और स्टॉप बटन क्रमश: startTimer
और stopTimer
फ़ंक्शंस को कॉल करते हैं। प्रत्येक सेकेंड टाइमर आग और increaseTimerCount
फ़ंक्शन कॉल करता है। मेरे पास एक ivar timerCount
भी है जो सेकंड में बीत चुके समय तक रहता है।आईओएस टाइमर
- (void)increaseTimerCount
{
timerCountLabel.text = [NSString stringWithFormat:@"%d", timerCount++];
}
- (IBAction)startTimer
{
timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(increaseTimerCount) userInfo:nil repeats:YES];
}
- (IBAction)stopTimer
{
[timer invalidate];
[timer release];
}
समस्या वहाँ एक देरी जब प्रारंभ बटन दबाया जाता है (जो मैं यह सोचते हैं हूँ टाइमर हर बार startTimer कहा जाता है reinitializing की वजह से है) हो रहा है कि है। क्या इसे अमान्य किए बिना टाइमर को रोकने और फिर से शुरू करने का कोई तरीका है और इसे पुनर्निर्माण? या ऐसा करने का एक बेहतर/वैकल्पिक तरीका?
धन्यवाद।