iOS masonry设置控件的优先级

1.效果  标题标题标题  时间;优先保证时间的完整显示,标题过长就显示...

//时间
        _timeLabel = [[UILabel alloc] init];
        [self.contentView addSubview:_timeLabel];
        _timeLabel.font = [UIFont systemFontOfSize:12];
        _timeLabel.textAlignment = NSTextAlignmentRight;
        _timeLabel.textColor = UIColorFromRGB(0x999999);
        [_timeLabel mas_makeConstraints:^(MASConstraintMaker *make) {
            make.right.equalTo(weakSelf.contentView.mas_right).offset(-11);
            make.top.equalTo(weakSelf.topClearView.mas_top).offset(16);
        }];
        
        //标题
        _titleLabel = [[UILabel alloc] init];
        [self.contentView addSubview:_titleLabel];
        _titleLabel.numberOfLines = 1;
        _titleLabel.font = [UIFont systemFontOfSize:16];
        _titleLabel.textAlignment = NSTextAlignmentLeft;
        _titleLabel.textColor = UIColorFromRGB(0x111111);
        _titleLabel.lineBreakMode = NSLineBreakByTruncatingTail;
        [_titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
            make.left.equalTo(weakSelf.manyChooseButton.mas_right).offset(26);
            make.top.equalTo(weakSelf.topClearView.mas_top).offset(16);
            make.right.mas_lessThanOrEqualTo(self.timeLabel.mas_left).with.offset(-5);
        }];
        [self.titleLabel setContentCompressionResistancePriority:(UILayoutPriorityDefaultLow) forAxis:(UILayoutConstraintAxisHorizontal)];
        [self.timeLabel setContentCompressionResistancePriority:(UILayoutPriorityDefaultHigh) forAxis:(UILayoutConstraintAxisHorizontal)];

 

posted on 2018-01-18 14:48  麦芽呀~  阅读(3990)  评论(0编辑  收藏  举报