क्या मेरी एनीमेशन पूरी होने के बाद मैं एक फ़ंक्शन को कॉल करने के लिए सेट कर सकता हूं? मैं UIView
फीका चाहता हूं और फिर superView
से इसे हटा देना चाहता हूं।UIView एनीमेशन पूर्णता कॉलबैक?
13
A
उत्तर
25
हां, यह आसान है:
आप अपने एनीमेशन कॉन्फ़िगर
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(myAnimationStopped:finished:context:)];
और की तरह अपने विधि को परिभाषित जब:
-(void)myAnimationStopped:(NSString *)animationID
finished:(NSNumber *)finished
context:(void *)context {
// fancy code here
}
self
और की है कि विधि, होना जरूरी नहीं है पाठ्यक्रम।
37
आईओएस 4 में एनिमेशन ब्लॉक पेश किए गए थे। ऐप्पल आपको इनका उपयोग करने की सिफारिश करता है, और नए तरीके ज्यादातर कॉलबैक को प्रतिस्थापित करने वाले पूर्णता ब्लॉक के लिए पूछते हैं। उदाहरण के लिए:
[UIView animateWithDuration:0.5f
delay:0.0f
options:UIViewAnimationCurveEaseInOut
animations:^{
[myView setAlpha:0.0f];
}
completion:^(BOOL finished) {
[myView removeFromSuperview];
}];
धन्यवाद - मैं तरीकों में से सभी के माध्यम से देख रहा था, विश्वास नहीं कर सकता मैं याद किया है कि एक – Slee
haha oldschool ^^ अगले जवाब यह एक अब और नहीं किया जाता है – Macistador
के लिए जाते हैं हाँ, यह से भी अधिक है अब 4 साल पुराना ... – Eiko