Трейлинг-ограничение - PullRequest
       21

Трейлинг-ограничение

1 голос
/ 01 апреля 2019

В настоящее время я изучаю автоматическую разметку и пытаюсь настроить некоторые ячейки таблицы так, чтобы они отображались одинаково на разных устройствах

Макет корректно отображается на всех устройствах iPhone, но на iPad он растянут.

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

Ограничения используют меньше или равно, что отлично работает на iPhone, но не отображается правильно на iPad. iPad работает, если я использую больше или равно, но это портит iPhone

Это ограничения enter image description here

Так должно выглядеть на обоих устройствах. enter image description here

Но вот как это выглядит на iPad enter image description here

Ответы [ 2 ]

0 голосов
/ 02 апреля 2019

Причина, по которой вы получаете широкое текстовое поле на iPad, заключается в том, что вы ограничиваете текстовое поле "Partial Bag" задним краем ячейки.

Не глядя на свой фактический раскадровку, не уверен, почему возникают конфликты ограничений.

Вот как я настроил вашу ячейку, и у меня нет проблем (кроме известной ошибки с вертикальным выравниванием текста в IB при разметке текстовых полей с закругленными границами):

enter image description here

Обратите внимание, что я дал Full Bag ширину 32 и ограничил ширину Partial Bag до Full Bag. Нет ограничений на задний край представления содержимого ячейки.

Результат в книжной и альбомной ориентациях (который, конечно же, будет аналогичным для iPad):

enter image description here

enter image description here

0 голосов
/ 01 апреля 2019

Вы должны установить ограничение ширины на обоих UITextField с. Таким образом, первый (и второй) не растянется. Другим вариантом было бы сделать трейлинг-ограничение второго UITextField равным или большим.

...