Сбой Masonry v1.1.0 при использовании safeAreaLayoutGuide

Эта авария:

make.top.left.right.equalTo(self.view.mas_safeAreaLayoutGuide);

но это нормально

make.top.equalTo(self.view.mas_safeAreaLayoutGuideTop);
make.left.equalTo(self.view.mas_safeAreaLayoutGuideLeft);
make.right.equalTo(self.view.mas_safeAreaLayoutGuideRight);

Зачем? Я использую кладку

Это основной код:

- (void)configView {
    self.view.backgroundColor = kColor666;
    UIView *headView = [UIView new];
    headView.backgroundColor = kColorWhite;
    [self.view addSubview:headView];
    [headView mas_makeConstraints:^(MASConstraintMaker *make) {
    if (@available(iOS 11.0, *)) {
        make.top.equalTo(self.view.mas_safeAreaLayoutGuideTop); //ok
        make.left.equalTo(self.view.mas_safeAreaLayoutGuideLeft);   //ok
        make.right.equalTo(self.view.mas_safeAreaLayoutGuideRight); //ok
        make.top.left.right.equalTo(self.view.mas_safeAreaLayoutGuide);   //crash
    } else {
        make.top.equalTo(self.mas_topLayoutGuide);
        make.left.right.equalTo(self.view);
    }
    make.height.mas_equalTo(120);
    }];
}

кажется, ничего плохого. Я просто хочу написать меньше кода.

0 ответов

Другие вопросы по тегам