美文网首页iOS踩过的坑系列
iOS踩过的坑之使用Masonry做动画

iOS踩过的坑之使用Masonry做动画

作者: Shaw1211 | 来源:发表于2019-04-24 14:23 被阅读0次

动画问题,和普通的方法实现差不多,重点只是修改约束后调用

[view.superview layoutIfNeeded];

而已

[view mas_makeConstraints:^(MASConstraintMaker *make) {

  make.top.mas_equalTo(400);

  make.left.mas_equalTo(100);

  make.size.mas_equalTo(CGSizeMake(100, 100));

}];

[view.superview layoutIfNeeded];
//如果其约束还没有生成的时候需要动画的话,就请先强制刷新后才写动画,否则所有没生成的约束会直接跑动画

[UIView animateWithDuration:3 animations:^{

  [view mas_updateConstraints:^(MASConstraintMaker *make) {

      make.left.mas_equalTo(200);

}];

[view.superview layoutIfNeeded];//强制绘制


注意此处一定是改变约束的父视图调用layoutIfNeeded函数

- (void)tapTeacherVideoView {
    if (self.isTeacherSplitScreen) {
        [self.studentVideoView removeFromSuperview];
        [UIView beginAnimations:nil context:nil];
        [UIView setAnimationDuration:.5f];
        [self.teacherVideoView mas_updateConstraints:^(MASConstraintMaker *make) {
            make.width.leading.equalTo(self.view);
        }];
        [self.view layoutIfNeeded];
        [UIView commitAnimations];
        self.teacherSplitScreen = NO;
    }
}

相关文章

  • iOS踩过的坑之使用Masonry做动画

    动画问题,和普通的方法实现差不多,重点只是修改约束后调用 而已 注意此处一定是改变约束的父视图调用layoutIf...

  • 10.4 Masonry使用-动画

    Masonry使用-动画 会进行上下缩放 Masonry使用-动画1.png Masonry使用-动画2.png

  • Masonry 踩过的坑

    1、布局的时候出现了这样的一个错误跳到断言这里 原本不知是什么缘故,查看报错信息如此 原本是以为定义self的时候...

  • iOS多线程使用踩过的坑

    iOS多线程使用踩过的坑 iOS 开发过程中,我们经常使用系统提供的方法使用多线程(全局并发)包括: 使用起来很方...

  • 媒体动画网页笔记

    最近师兄做毕业设计,有需要完善页面展示,也踩了不少坑,到底还是自己没啥做动画的经验,记下来。 前言 师兄的动画使用...

  • 使用masonry做动画

    比如要实现一个view的出现和隐藏,我用过以下三种方式分别实现过,记录如下:

  • iOS之踩过的坑

    坑一 我们知道,在Xcode里,如果两个文件重名,编译的时候会报一个 2 duplicate symbols的错误...

  • Masonry踩坑

    1.cornerRadius和borderWidth设置无效问题 这是由于给view设置约束之后,view的fra...

  • iOS - Masonry使用中的一些整理

    [置顶]iOS - Masonry使用中的一些整理 标签:iOS资源大全iOS常用方法iOS学习资料Masonry...

  • iOS 使用masonry 添加动画

    预先定义一个约束的全局变量,用来接收需要变化的约束 @property (nonatomic, strong) M...

网友评论

    本文标题:iOS踩过的坑之使用Masonry做动画

    本文链接:https://www.haomeiwen.com/subject/gjkggqtx.html