मैं इस UIView एनीमेशन पर पूरा होने की उम्मीद कर रहा हूँ बंद निर्दिष्ट अवधि के बाद के नाम से जाना, लेकिन यह तुरंत फायरिंग प्रतीत होता है ...स्विफ्ट UIView animateWithDuration पूरा होने बंद बुलाया तुरंत
UIView.animateWithDuration(
Double(0.2),
animations: {
self.frame = CGRectMake(0, -self.bounds.height, self.bounds.width, self.bounds.height)
},
completion: { finished in
if(finished) {
self.removeFromSuperview()
}
}
)
किसी और अनुभवी किसी को भी है इस? मैंने पढ़ा है कि दृश्य को स्थानांतरित करने के लिए फ्रेम के बजाए दूसरों को केंद्र का उपयोग करके और अधिक सफलता मिली है, हालांकि मुझे इस विधि के साथ भी यही समस्याएं थीं।
आप इस कोड को कहां निष्पादित करते हैं? – akashivskyy
सुनिश्चित करें कि फ्रेम * वास्तव में * बदलता है, क्योंकि कोई एनीमेशन नहीं होने पर पूर्णता ब्लॉक को तुरंत कॉल किया जाता है। एक कस्टम UIView कक्षा में – akashivskyy
। मैं init() में शुरू करने के लिए दृश्य में दृश्य को एनिमेट करता हूं, फिर उपरोक्त कोड को तब कहा जाता है जब कोई टैप कहीं भी होता है। फ्रेम निश्चित रूप से भी बदल रहा है ... –