Я пытаюсь анимировать UIView с блоком AnimateWithDuration. Этот UIView содержит два UIScrollViews и две кнопки. Одна кнопка - фильтр вниз, а другой - filterUP. Как изображение:Неправильный блок AnimateWithDuration
Так прокрутке вниз Я использую этот блок:
@IBAction func FilterEntry(sender: AnyObject) {
self.FilterDown.hidden = true
self.FilterDownIcon.hidden = true
var duration = 0.5
UIView.animateWithDuration(duration, animations: {
self.ColouredSquare.frame = CGRect(x: 0, y: 65, width: 400, height: 212)
}, completion: { finished in
self.FilterUPIcon.hidden = true
self.FilterUP.hidden = true
self.DateScroll.hidden = false
self.EventScroll.hidden = false
self.FilterUPIcon.hidden = false
self.FilterUP.hidden = false
})
}
работает отлично и прокручивает очень приятно. но когда я иду в другую сторону, так что UIView поднимается, тогда UIView идет хорошо, но удаление UIScollviews продолжается до конца анимации, а затем исчезает. Я вижу по коду, что это имеет смысл, но когда он идет вниз, он работает ровно, но поднимаясь, он выглядит ужасно.
Вот мой код, который приносит UIView вверх:
@IBAction func FilterUPEvent(sender: AnyObject) {
self.FilterUP.hidden = true
self.FilterUPIcon.hidden = true
var duration = 0.5
UIView.animateWithDuration(duration, animations: {
self.ColouredSquare.frame = CGRect(x: 0, y: 65, width: 400, height: 20)
}, completion: { finished in
self.EventScroll.hidden = true
self.DateScroll.hidden = true
self.FilterUP.hidden = true
self.FilterUPIcon.hidden = true
self.FilterDown.hidden = false
self.FilterDownIcon.hidden = false
})
}
В чем вопрос? Кроме того, если вы хотите _scroll_, почему вы меняете _frame_ чего-то? – matt
Привет, он прокручивает прекрасный снизу, но, поднимаясь, он прокручивает фон, но затем просто удаляет UIScrollViews внезапно. Это имеет смысл, потому что в закрывающих блоках я их спрятал. но спускаться он выглядит довольно гладко. – Jason
Вы можете использовать свойство 'alpha'' UIView' в блоке анимации для постепенного исчезновения и исчезновения представлений. –