구조는 레이블과 텍스트 필드가있는보기입니다. 레이블에 다른 글꼴 크기의 다른 장치를 적용해야하고 텍스트 필드의 너비는 레이블 너비에 따라 유연합니다. 아래UITextFiled 및 UILabel 레이아웃이 Masonry와 함께 실패했습니다.
코드 :
UIView *selectBgView = [[UIView alloc] init];
selectBgView.backgroundColor = [UIColor redColor];
[condiView addSubview:selectBgView];
[selectBgView makeConstraints:^(MASConstraintMaker *make) {
make.width.equalTo(@200);
make.height.equalTo(@20);
make.left.equalTo(@10);
make.top.equalTo(@20);
}];
UILabel *label = [[UILabel alloc] init];
label.backgroundColor = [UIColor grayColor];
label.font = [UIFont systemFontOfSize:13];
label.text = @"Type :";
[condiView addSubview:label];
[label makeConstraints:^(MASConstraintMaker *make) {
make.left.top.bottom.equalTo(selectBgView);
}];
UITextField * textField = [[UITextField alloc] init];
textField.borderStyle = UITextBorderStyleRoundedRect;
textField.font = [UIFont systemFontOfSize:13];
[condiView addSubview:textField];
[textField makeConstraints:^(MASConstraintMaker *make) {
make.right.top.bottom.equalTo(selectBgView);
make.left.equalTo(label.right);
}];
그것은 아래 그림처럼 작동하지 않습니다.
하지만 내가 볼 수있는 텍스트 필드를 교환 할 때. 그것은 작동합니다!
UIView *view = [UIView new];
view.backgroundColor = [UIColor greenColor];
[condiView addSubview:view];
[view makeConstraints:^(MASConstraintMaker *make) {
make.right.top.bottom.equalTo(selectBgView);
make.left.equalTo(label.right);
}];
하는 사람이 나를 도울 수 있다면! 어떤 도움을 주시면 감사하겠습니다.
스토리 보드를 사용하고 동일한 상수를 설정하면 잘 작동합니다 ... – Lucifron
코드는 어떻습니까? 작동합니까? – Yan