UIView and Masonry implement animation effects and uiviewmasonry Animation
The animation effect of Masonry is as follows:
// Button click method-(void) clickedButton {static BOOL isMove; // NO Weakify (weakSelf) by default; // tell self. view constraints must be updated to [weakSelf. view setNeedsUpdateConstraints]; // call this method to notify self. view checks whether the update constraint is required. If yes, the update takes effect only when the animation effect is added below [weakSelf. view updateConstraintsIfNeeded]; if (isMove) {isMove = NO; // Add an animation [UIView animateWithDuration: 5 animations: ^ {[weakSelf. displayView mas_updateConstraints: ^ (MASConstraintMaker * make) {// change the height from top to make. top. similar to (weakSelf. baseView. mas_bottom ). with. offset (100) ;}]; // you must call this method to obtain the animation effect [weakSelf. view layoutIfNeeded];} else {isMove = YES; // Add an animation [UIView animateWithDuration: 5 animations: ^ {[weakSelf. displayView mas_updateConstraints: ^ (MASConstraintMaker * make) {// change the height from top to make. top. similar to (weakSelf. baseView. mas_bottom ). with. offset (-100) ;}]; // you must call this method to obtain the animation effect [weakSelf. view layoutIfNeeded] ;}] ;}}
Important Notes: