Я использую визуальный формат для определения ограничений. Цель состоит в том, чтобы разместить UIView в нижней части супер-представления, скажем self.view с высотой, установленной как 40, и шириной автоматически. Я сделал это с помощью Storyboard, но я не могу сделать это программно. Вот код, который я написал. Приложение терпит крах, если я не даю фиксированной ширины. Он сбой со следующим ограничением: «H: [redView] |». Если я изменил это на «H: [redView (100)]», он работает. Я не хочу использовать self.bounds и получить ширину оттуда. Он должен придерживаться левой стороны супер-представления, нижней и правой стороны.Приложение сбой при добавлении ограничений программно
Пожалуйста, помогите!
NSDictionary *viewsDictionary = @{@"redView":self.redView};
NSArray *constraint_H = [NSLayoutConstraint constraintsWithVisualFormat:@"V:[redView(40)]"
options:0
metrics:nil
views:viewsDictionary];
NSArray *constraint_V = [NSLayoutConstraint constraintsWithVisualFormat:@"H:[redView]|"
options:0
metrics:nil
views:viewsDictionary];
// 3. Define the redView Position
NSArray *constraint_POS_V = [NSLayoutConstraint constraintsWithVisualFormat:@"V:[redView]|"
options:0
metrics:nil
views:viewsDictionary];
NSArray *constraint_POS_H = [NSLayoutConstraint constraintsWithVisualFormat:@"H:|[redView]"
options:0
metrics:nil
views:viewsDictionary];
[self.redView addConstraints:constraint_H];
[self.redView addConstraints:constraint_V];
[self.view addConstraints:constraint_POS_H];
[self.view addConstraints:constraint_POS_V];
Сообщение об исключении должно быть довольно четким. –