如何在iOS编程中并排制作两个UILabel

时间:2017-06-10 11:12:34

标签: ios objective-c xamarin xamarin.ios uilabel

我想以编程方式并排显示两个UILabel,如下图所示。 enter image description here

在图像显示中,第一个Label是短值,但它的值是dyanmic,第二个UILabel多于两行,如图所示。但是第二个标签设置在第一个UILabel的右侧。

有没有办法以编程方式执行此操作..

我尝试了很多事情,但没有任何对我有帮助。

任何帮助都要得到赞赏。

1 个答案:

答案 0 :(得分:1)

试试这个:

UILabel *label1 = [[UILabel alloc]init];
[self.view addSubview:label1];
label1.backgroundColor = [UIColor greenColor];
label1.font = [UIFont systemFontOfSize:15];
label1.text = @"ABC";
// this is the way
[label1 setContentHuggingPriority:UILayoutPriorityDefaultHigh forAxis:UILayoutConstraintAxisHorizontal];

UILabel *label2 = [[UILabel alloc]init];
[self.view addSubview:label2];
label2.font = [UIFont systemFontOfSize:15];
label2.text = @"label2label2label2label2label2label2label2label2label2label2label2";
label2.backgroundColor = [UIColor orangeColor];
label2.numberOfLines = 0;

[label1 mas_makeConstraints:^(MASConstraintMaker *make) {
    make.left.mas_equalTo(0);
    make.top.mas_equalTo(400);
    make.height.mas_equalTo(18);
}];

[label2 mas_makeConstraints:^(MASConstraintMaker *make) {
    make.left.mas_equalTo(label1.mas_right);
    make.top.mas_equalTo(label1);
    make.right.mas_offset(0);
}];

result