Junior — Middle
Hoe veranderen de afmetingen van View tijdens de animatie, wanneer de frame in de helft van de animatieperiode verdubbelt?
sobes.tech AI
Antwoord van AI
Als tijdens de animatie het frame View in de helft van de animatieperiode verdubbelt, veranderen de afmetingen van View als volgt:
- Tijdens de eerste helft van de animatie zullen de afmetingen van View geleidelijk toenemen van de oorspronkelijke grootte tot het dubbele.
- In de tweede helft van de animatie blijven de afmetingen op het nieuwe verhoogde niveau (als de animatie geen omgekeerde verandering voorziet).
Dat wil zeggen, als de totale duur van de animatie T is, zal het frame in T/2 verdubbelen, en in de resterende T/2 tijd zal de grootte constant blijven.
Als de animatie is ingesteld op een continue verandering, zal de grootteverandering lineair of volgens de ingestelde curve (ease-in, ease-out) plaatsvinden gedurende de eerste helft van de tijd, en daarna stabiliseren.
Voorbeeld in Swift met UIView.animate:
UIView.animate(withDuration: totalDuration) {
UIView.animateKeyframes(withDuration: totalDuration, delay: 0, options: [], animations: {
UIView.addKeyframe(withRelativeStartTime: 0, relativeDuration: 0.5) {
view.frame.size = CGSize(width: view.frame.width * 2, height: view.frame.height * 2)
}
UIView.addKeyframe(withRelativeStartTime: 0.5, relativeDuration: 0.5) {
// De afmetingen blijven constant
}
})
}
Dus, de grootteverandering vindt alleen plaats in de eerste helft van de animatie.