2011-06-13 17 views
5

इंतजार कर नहीं मैं इस कोड है। क्या कोई दूसरा तरीका है कि मैं बस दूसरी बिट चलाने से पहले 0.8 सेकंड इंतजार कर सकता हूं?UIView एनीमेशन ब्लॉक

+0

क्यों downvote:

यहाँ एक उदाहरण 0.8 की देरी का उपयोग कर की तरह आप अपने प्रश्न में प्रयोग किया जाता है? –

+0

@quixoto: मुझे नहीं! =) –

+0

उन दो तरीकों से क्या किया जा रहा है, और आप यह कैसे निर्धारित कर रहे हैं कि पूरा करने का ब्लॉक इंतजार नहीं कर रहा है? –

उत्तर

4

आप पूर्णता पैरामीटर पर भरोसा करने के बजाय [NSTimer performSelector:withObject:afterDelay] पर कॉल जोड़ सकते हैं।

9

इस तरह एक एनीमेशन ब्लॉक का दुरुपयोग न करें। यदि आप वास्तव में देरी चाहते हैं, तो जीसीडी (आईओएस 4+) का उपयोग करने के लिए विधि से जुड़े या यहां तक ​​कि एक आसान तरीका विधि का उपयोग करें।

dispatch_time_t delay = dispatch_time(DISPATCH_TIME_NOW, NSEC_PER_SEC * 0.8); 
dispatch_after(delay, dispatch_get_main_queue(), ^(void){ 
    [self anotherMethod]; 
}); 
+0

+1 जीसीडी –

+0

के उपयोग के लिए +1 यह ध्यान देने योग्य है कि एंड्रयू को 'एनिमेट विथ अवधि: एनिमेशन: समापन:' [उनके पहले के प्रश्न] में उपयोग करने के लिए कहा गया था (http://stackoverflow.com/questions/6330050/how-do-i- जिस समस्या पर वह काम कर रहा है, उसके बारे में प्रतीक्षा करें-एक-एनीमेशन-इन-ए-एनी-ए-एनी-एन्ड-एंड-एंट-इन्टुई)। यदि आप एक प्रदान करने के इच्छुक हैं, तो वह एक एनीमेशन ब्लॉक का "दुरुपयोग" करने का एक और गहराई से स्पष्टीकरण की सराहना कर सकता है। –

+0

मैं उसके लिए और अधिक जानकारी देने का इंतजार कर रहा था, लेकिन ऐसा लगता है कि उसने इसे किसी भी तरह से समझ लिया है। –

संबंधित मुद्दे