特定条件でviewの高さを動的に変える必要が出て来た
これをObjective-cでの実現方法
・方針
デフォルトの制約があるのでそれを解除して
新しい制約を加えて高さを動的に変える
・Storyboardでの制約
Storyboardで制約を作る
その後、右クリックで制約をコードに紐付ける
そうすると以下が出来上がる
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *constraint;
・制約の解除
constraint.active = NO;
・制約の追加
view1をview2の上になるように制約をつける
NSLayoutConstraint* newConstraint = [NSLayoutConstraint constraintWithItem:view1 attribute:NSLayoutAttributeBottom relatedBy:NSLayoutRelationEqual toItem:view2 attribute:NSLayoutAttributeTop multiplier:1.0 constant:0]; [self.view addConstraints:@[newConstraint]];
こうして制約を動的に変えることで、viewの高さを動的に変えることができましたとさ
まだまだiOSの戦いは続くよ