Многострочный интерфейс UIButton и авторазметкаIOS

Программируем под IOS
Ответить
Anonymous
 Многострочный интерфейс UIButton и авторазметка

Сообщение Anonymous »

Я создал контроллер представления, который выглядит следующим образом:

[img]https://i.stack. imgur.com/IpFxP.png[/img]


Я хочу, чтобы две верхние кнопки всегда имели 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;
}
Но это вообще ничего не изменило.

Вопрос: Как мне сделать авто макет с учетом того, что левой кнопке нужны две строки?

Подробнее здесь: https://stackoverflow.com/questions/238 ... autolayout
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»