Как иметь две метки рядом, одна может расти, а другая нет? - PullRequest
0 голосов
/ 03 мая 2018

У меня есть две этикетки рядом. И у меня есть два ограничения. Метка A начинается с переднего края экрана. Label-B начинается в 10px от задней кромки Label-1. Ограничений по ширине нет.

Длина текста Label-A варьируется; Текст Label-B исправлен (длина 6 символов). Это работает нормально, пока длина Label-A не пройдет определенную точку. Затем Label-B уходит с экрана.

Перед тем, как назначить текстовое значение для Label-A, я хочу обрезать текст Label-A с помощью «...», если он выдвинет Label-B за задний край представления. Любая идея, как выяснить, если я должен урезать текст Label-A и на сколько? Это должно работать как в портретном, так и в ландшафтном режимах.

Спасибо.

Ответы [ 3 ]

0 голосов
/ 03 мая 2018

Прежде всего убедитесь, что у ваших меток есть ограничения на опережение и продвижение.

Ваше представление должно выглядеть так:

|-8-[Label-A]-10-[Label-B]-8-|

После этого установите horizontal content hugging priority и horizontal compression resistance на Label-B выше Label-A.

0 голосов
/ 03 мая 2018

Набор Приоритет сопротивления сжатию содержимого для одного из обоих ярлыков, в соответствии с вашими требованиями.

Посмотрите на эти снимки:

Две метки по умолчанию content compression resistance priority.

enter image description here

Я изменил content compression resistance priority для метки blablabla blablabla, с 750 на 749.

Результат:

enter image description here

Подробнее см. В документе Apple: Установка приоритетов для содержимого и сопротивления сжатию

0 голосов
/ 03 мая 2018

Сделайте horizontal content hugging priority и horizontal content compression resistance priority из Label-B выше, чем Label-A. А также добавьте трейлинг Label-B к суперпредставлению.

Example

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...