2016-04-25 4 views
-1

私はプログラム的にこれらの2つのラベルの間にスペースを作成したいが、私はこれを行う方法がわからない午前2つのラベル、は、プログラム

UILabel *label1 = [[UILabel alloc]initWithFrame:CGRectMake(10, 50, 200, 40)]; 
[label1 setBackgroundColor:[UIColor clearColor]]; 
[label1 setText:@"label1"]; 
[[self view] addSubview:label1]; 


// Create Label 
UILabel *label2 = [[UILabel alloc]initWithFrame:CGRectMake(10, 50, 200, 40)]; 
[label2 setBackgroundColor:[UIColor clearColor]]; 
[label2 setText:@"label2"]; 
[[self view] addSubview:label2]; 

を持っているラベルに制約を加えます。私はstackoverflowからの答えのいくつかを使ってみましたが、彼らは私にエラーを与えました。このようなこの一つとして

NSLayoutConstraint *c1 = [NSLayoutConstraint 
          constraintWithItem:UIl.label2 
          attribute:NSLayoutAttributeLeading 
          relatedBy:NSLayoutRelationEqual 
          toItem:self 
          attribute:NSLayoutAttributeLeading 
          multiplier:1.0f 
          constant:8.0f]; 
+0

何が間違っているのですか?また、私はオートレイアウト用に石積みを使用することをお勧めします。 –

答えて

0

私はあなたが簡単に行うことができ、石材を使用してprogrammatically.By制約を適用するための石材を使用することをお勧め:

Step1-制約ラベル1

[label1 mas_makeConstraints:^(MASConstraintMaker *make) { 
     make.top.equalTo(self.view.mas_top); 
     make.left.equalTo(self.view.mas_left); 
    }]; 

ステップ2 - 規制ラベル2

[label2 mas_makeConstraints:^(MASConstraintMaker *make) { 
      make.top.equalTo(label1.mas_top); 
      make.left.equalTo(label1.mas_left).with.offset(yourValue); 
     }];