美文网首页
iOS Masonry 使用小结

iOS Masonry 使用小结

作者: CaptainRoy | 来源:发表于2019-06-22 14:19 被阅读0次
  • 相邻视图
-(UIView *)redView
{
    if (!_redView) {
        _redView = [[UIView alloc] init];
        _redView.backgroundColor = [UIColor redColor];
        [self.view addSubview:_redView];
        [_redView mas_makeConstraints:^(MASConstraintMaker *make) {
            make.width.height.mas_equalTo(60.0f);
            make.top.offset(64.0f);
            make.right.offset(-10.0f);
        }];
    }
    return _redView;
}

-(UIView *)blueView
{
    if (!_blueView) {
        __weak typeof(self) weakSelf = self;
        _blueView = [[UIView alloc] init];
        _blueView.backgroundColor = [UIColor blueColor];
        [self.view addSubview:_blueView];
        [_blueView mas_makeConstraints:^(MASConstraintMaker *make) {
            make.width.height.mas_equalTo(70.0f);
            make.right.offset(-10.0f);
            make.top.equalTo(weakSelf.redView.mas_bottom).offset(10.0f);
        }];
    }
    return _blueView;
}
  • 动画
-(UIView *)orangeView
{
    if (!_orangeView) {
        _orangeView = [[UIView alloc] init];
        _orangeView.backgroundColor = [UIColor orangeColor];
        [self.view addSubview:_orangeView];
        [_orangeView mas_makeConstraints:^(MASConstraintMaker *make) {
            make.width.height.mas_equalTo(100.0f);
            make.left.offset(100.0f);
            make.top.offset(100.0f);
        }];
    }
    return _orangeView;
}
__weak typeof(self) weakSelf = self;
    dispatch_time_t delayTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0/*延迟执行时间*/ * NSEC_PER_SEC));
    dispatch_after(delayTime, dispatch_get_main_queue(), ^{
        [UIView animateWithDuration:1.0f animations:^{
            [weakSelf.orangeView mas_updateConstraints:^(MASConstraintMaker *make) {
                make.left.offset(-50.0f);
            }];
            // 告知父类控件绘制,否则动画无法无法生效
            [weakSelf.orangeView.superview layoutIfNeeded];
        }];
    });
  • 父类一定要 layoutIfNeeded这个方法否则动画无法生效

相关文章

  • iOS Masonry 使用小结

    相邻视图 动画 父类一定要 layoutIfNeeded这个方法否则动画无法生效

  • iOS Masonry使用小结

    一、Masonry简介 Masonry是一个轻量级的布局框架,它拥有自己的描述语法(采用更优雅的链式语法封装)来自...

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

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

  • Third Party

    A:推荐使用 B:修改使用 C:参考使用 自动布局Masonry(A)iOS自动布局框架-Masonry详解SDA...

  • iOS实录16:GCD使用小结(二)

    iOS实录16:GCD使用小结(二) iOS实录16:GCD使用小结(二)

  • YKAutolayout --- Make Masonry Ea

    项目Github地址 YKAutolayout Masonry 的 使用 做过iOS的对Masonry这个库应该都...

  • Masonry使用小结

    Masonry使用小结:1、equalTo:用于跟对象约束;2、mas_equalTo:用于具体的数值;3、没有o...

  • Masonry使用总结

    Masonry使用总结 一、Masonry简介 Masonry是一个轻量级的布局框架,适用于iOS以及OS X。它...

  • Masonry

    Masonry介绍与使用实践 - iOS移动开发周报 - 推酷

  • Masonry源码分析

    Masonry是iOS在控件布局中经常使用的一个轻量级框架,Masonry让NSLayoutConstraint使...

网友评论

      本文标题:iOS Masonry 使用小结

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