美文网首页
Masonry--更新动画

Masonry--更新动画

作者: GUIYIVIEW | 来源:发表于2017-06-28 15:11 被阅读84次

    很久没有敲代码了,手真的生了。想要实现一个自定义ActionSheet的动画,使用的是Masonry布局,然而尝试许久都没看到动画效果,所以狂百度。然而百度了辣么多种方法,没有一种对我是有用的,也许是因为我的视图层级太多了,没办法,只能一行代码一行代码的尝试,从一行行注释到一行行替换执行顺序,在我将要进行下一次尝试的时候,动画效果出来了,T_T 我把动画时间写太长了。。。下面直接上代码吧

    - (void)viewDidLoad {
        [super viewDidLoad];
        /// 添加视图
        [self.view addSubviews:self.bottomView];
       /// 1.初始布局
        [self.bottomView mas_makeConstraints:^(MASConstraintMaker *make) {
            make.left.right.mas_equalTo(0);
            make.bottom.mas_equalTo(kBYScreen_Height);
        }];
    }
    
    - (void)show {
      /// 2.在这里先对布局约束进行更新
      [self.bottomView mas_updateConstraints:^(MASConstraintMaker *make) {
            make.bottom.mas_equalTo(0);
        }];
        [UIView animateWithDuration:0.3 animations:^{
            /// 注意:
            /// 3.这里一定是要做动画的视图的父视图,或者父视图的父视图,总之就是比它辈分高的
            [self.bottomView.superView layoutIfNeeded];
          /// 这里可以处理其他的事情,比如改变父视图的透明度
        } completion:^(BOOL finished) {
            
        }];
    }
    

    这里简单记录一下,免得下一次又忘记了!!!

    相关文章

      网友评论

          本文标题:Masonry--更新动画

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