Я создал контроллер вида, который выглядит так:
Я хочу, чтобы две верхние кнопки всегда имели 20 точек между собой и левыми/правыми краями всего изображения. Они должны всегда иметь одинаковую ширину. Я создал ограничения для всего этого, и он работает именно так, как я этого хочу. Проблема заключается в вертикальных ограничениях. Кнопки всегда должны быть на 20 пунктов ниже верхнего края. Они должны иметь одинаковую высоту. Однако автоопределение не учитывает, что левой метке нужны две строки, чтобы соответствовать всему ее тексту, поэтому результат выглядит следующим образом:
Я хочу, чтобы это было на первом рисунке. Я не могу добавить постоянные ограничения высоты для кнопок, потому что, когда приложение работает на iPad, требуется только одна строка, и тогда было бы бесполезно иметь дополнительное пространство.
В viewDidLoad
Я пробовал это:
- (void)viewDidLoad
{
[super viewDidLoad];
self.leftButton.titleLabel.preferredMaxLayoutWidth = (self.view.frame.size.width - 20.0 * 3) / 2.0;
self.rightButton.titleLabel.preferredMaxLayoutWidth = (self.view.frame.size.width - 20.0 * 3) / 2.0;
}
Но это ничего не меняло.
Вопрос: как сделать автозапуск уважением, что левой кнопке нужны две строки?