ios - oc 如何获得用 Masonry 约束好的宽度?
阿神
阿神 2017-04-18 09:43:42
0
4
817

oc 如何获得用 Masonry 约束好的宽度?
例子:

/// 怎样获取里面约束好的 45 呢?请问!!
    [self.choseCityBtn mas_makeConstraints:^(MASConstraintMaker *make) {
        make.left.equalTo(@(12));
        make.width.equalTo(@(45));
        make.height.equalTo(@(24));
        make.centerY.equalTo(@(navCenterY));
    }];
阿神
阿神

闭关修行中......

Antworte allen(4)
小葫芦

在View里

- (void)layoutSubviews {
    [super layoutSubviews];

    // 获取到约束后的控件frame
}

在controller里

- (void)viewDidLayoutSubviews {
    [super viewDidLayoutSubviews];

    // 获取到约束后的控件frame
}

参考资料: https://github.com/SnapKit/Ma...
其他资料: http://elijahdou.github.io/ui...

巴扎黑
  1. 把45提取出来作为一个变量

  2. 所有通过masonry加载约束,可以通过
    NSArray *installedConstraints = [MASViewConstraint installedConstraintsForView:self.choseCityBtn]

获得。
然后你循环遍历数组,找到你要的那个约束就好了

迷茫

从 NSConstraint 里面拿。

迷茫

设置完了之后 强制刷新setNeedDisplay 之后可以通过frame拿到强制刷新之后的属性

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage