Растянуть две кнопки по горизонтали на всех устройствах AutoLayout

Я пытаюсь иметь две кнопки рядом, которые выглядят правильно на всех устройствах, но независимо от того, какие ограничения я, кажется, добавляю, я продолжаю получать проблемы, подобные этому (одна кнопка больше другой):

введите здесь описание изображения

Есть идеи, что я делаю неправильно, добавляя ограничения? Я не использую для этого код, просто делаю это через InterfaceBuilder в раскадровке.

Установлены ограничения:

Ответ: Пробел в начале, Пробел внизу, Высота равна: 45, После кнопки «Удалить»

Удалить: Пробел в конце, Пробел внизу, Соотношение 32:9, Высота равна: 45, Кнопка «Ответить»


person James    schedule 20.10.2014    source источник


Ответы (3)


Выбрав обе кнопки, перейдите в Editor > Pin > Widths Equally. Затем установите высоту, начальное/конечное пространство, пространство между кнопками и нижнее пространство.

person Morgan Chen    schedule 20.10.2014

По моему мнению, добавьте следующие ограничения

  • Кнопка «Выбрать ответ» добавляет начальное и нижнее пространство к суперпросмотру.
  • Добавить ограничения по центру Y для кнопки удаления
  • Затем выровняйте верхнее и нижнее пространство, чтобы удалить кнопку, а также добавьте завершающий пробел, чтобы удалить кнопку.
  • После этого выберите кнопку удаления, добавьте нижний пробел и завершающий пробел.

У меня были аналогичные операции в одном из моих представлений, см. эту картинку для получения дополнительной информацииReply Button

Удачного кодинга :)

person iamVishal16    schedule 01.04.2015

Вам нужно добавить ограничение для одинаковой ширины, а также удалить ограничение «соотношение 32:9», которое в настоящее время устанавливает ширину для кнопки «Удалить» без установленной ширины для кнопки «Ответить». Вот что вызывает проблему.

Если у вас все еще есть передние и задние края, закрепленные на соответствующих сторонах представления контейнера, и установите расстояние между ними равным нулю, тогда все должно быть хорошо.

person mc01    schedule 20.10.2014