2011-10-14 10 views
7

मैं भविष्य में एक बार आग लगाने के लिए एनएसटीमर कैसे स्थापित करूं (कहें, 30 सेकंड)। अब तक, मैंने केवल इसे सेट करने में कामयाब रहा है ताकि यह तुरंत आग लग जाए, और फिर अंतराल पर।भविष्य में एक बार आग लगाने के लिए एनएसटीमर सेट करें

उत्तर

13

विधि का उपयोग करना चाहते है:

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval) seconds target:(id) target selector:(SEL) aSelector userInfo:(id) userInfo repeats:(BOOL) repeats 

repeats == NO तर्कों और seconds == 30 साथ। यह टाइमर बनाएगा और इसे शेड्यूल करेगा। यह केवल 30 सेकंड में (और तुरंत नहीं) आग लग जाएगा।

6

आप अपने भविष्य की तारीख के साथ टाइमर सेट कर सकते हैं और कोई

+ (NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval) seconds 
            target:(id) target 
            selector:(SEL) aSelector 
            userInfo:(id) userInfo 
            repeats:(BOOL) repeats 
6

उपयोग करने के लिए टाइमर का समय निर्धारित करने के लिए इस वर्ग विधि दोहराता निर्धारित किया है।

+(NSTimer *)scheduledTimerWithTimeInterval:(NSTimeInterval)seconds 
    target:(id)target selector:(SEL)aSelector userInfo:(id)userInfo 
    repeats:(BOOL)repeats 

पैरामीटर
सेकंड
टाइमर के फायरिंग के बीच सेकंड की संख्या। यदि सेकंड 0.0 से कम या उसके बराबर है, तो यह विधि इसके बजाय 0.1 मिलीसेकंड के गैर-ऋणात्मक मान को चुनती है।
लक्ष्य
ऑब्जेक्ट जिस पर टाइमर आग लगने पर एक चयनकर्ता द्वारा निर्दिष्ट संदेश भेजने के लिए ऑब्जेक्ट होता है। लक्ष्य वस्तु टाइमर द्वारा बरकरार रखी जाती है और टाइमर को अमान्य होने पर जारी किया जाता है।
aSelector
टाइमर आग लगने पर लक्षित करने के लिए संदेश भेजने के लिए संदेश। चयनकर्ता के पास निम्नलिखित हस्ताक्षर होना चाहिए:
- (शून्य) टाइमरफायर विधि: (एनएसटीमर *) द टाइमर
टाइमर स्वयं को इस विधि के तर्क के रूप में पास करता है।
उपयोगकर्ता जानकारी
टाइमर के लिए उपयोगकर्ता जानकारी। आपके द्वारा निर्दिष्ट ऑब्जेक्ट टाइमर द्वारा बनाए रखा जाता है और टाइमर को अमान्य होने पर जारी किया जाता है। यह पैरामीटर शून्य हो सकता है।
दोहराता है
यदि हां, तो टाइमर बार-बार अमान्य होने तक खुद को फिर से निर्धारित कर देगा। यदि नहीं, तो आग लगने के बाद टाइमर को अमान्य कर दिया जाएगा।
उदाहरण

[NSTimer scheduledTimerWithTimeInterval:2.0 
      target:self 
      selector:@selector(targetMethod:) 
      userInfo:[self userInfo] 
      repeats:NO]; 

टाइमर स्वचालित रूप से 2 सेकंड के बाद रन पाश से निकाल दिया गया है। Timer Programming Topics