ऑटो लेआउट से पहले ऑटो लेआउट का उपयोग करते समय UIView ऊंचाई को एनिमेट करें, मैं animateWithDuration
पर फ्रेम सेट करके एक प्रोजेक्ट में पृष्ठभूमि की ऊंचाई एनिमेट कर रहा हूं।स्विफ्ट
func setUpBackground() {
self.backgroundView.frame = CGRect(x: 0, y: 0, width: 320, height: 10)
self.backgroundView.backgroundColor = UIColorFromRGB(0x2d2d2d).CGColor
}
func AnimateBackgroundHeight() {
UIView.animateWithDuration(0.5, animations: {
self.backgroundView.frame = CGRect(x: 0, y: 0, width: 320, height: 600)
})
}
मैं ऑटो लेआउट करने के लिए अपने प्रोजेक्ट परिवर्तित करने के बाद, मैंने देखा है कि एनीमेशन होता है, लेकिन पृष्ठभूमि ऊंचाई वापस मूल आकार/शैली (इंटरफ़ेस बिल्डर सेटिंग) के बाद करने के लिए तस्वीरें। मैंने पढ़ा है कि जब ऑटो-लेआउट चालू होता है, तो बाधा CGRect
के साथ UIView
आयामों को सेट करने पर ओवरराइट कर देगी।
इसलिए मैं सोच रहा हूं कि ऑटो लेआउट चालू के साथ समान ऊंचाई परिवर्तन एनीमेशन प्रभाव को प्राप्त करने के बारे में कैसे जाना है।
आह मैं देखता हूं! यह बहुत अच्छा काम करता है। बहुत बहुत धन्यवाद। – Poyi
omg .. layoutIfNeeded() चाल है ... मैं इसे याद कर रहा था –