ios автоматическое расположение заставляет UILabel исчезнуть - PullRequest
0 голосов
/ 23 марта 2020

Это автоматическое расположение этого вида контроллера

enter image description here

Это количество точек для надписи "to thread" вверху

enter image description here

Это представление при запуске

enter image description here

Есть ли у кого-нибудь понимание о том, что вызывает верхний ярлык («пропустить» отсутствует?) Любой вклад приветствуется!

1 Ответ

0 голосов
/ 23 марта 2020

Автоматическая компоновка очень четкая, и если предоставленная вами компоновка не помещается в пространство при условии, что система сломает что-то, чтобы вместить остальные.

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

  2. Посмотрите, как вы используете точные ограничения (solid строки) в отличие от стиля «больше чем» / «меньше чем». Это означает, что элементы не могут адаптироваться к изменениям размера в рабочей среде. Для этого макета доступный размер по вертикали ДОЛЖЕН совпадать, чтобы воспроизвести ваш макет.

Для меня моя первая попытка исправить этот макет состояла бы в том, чтобы убрать два самых низких вертикальных ограничения и посмотреть, соответствует ли ваш верхний макет. этикетка появляется снова. Нижний контент может упасть с экрана, но вы получите подсказку о том, что вам нужно сделать.

Автоматическое размещение может быть PITA, но в целом:

  • работает медленно, постройте свой макет в разделах, используя стеки, где это возможно
  • добавьте как можно меньше ограничений, чтобы получить то, что вам нужно.
  • используйте ограничения неравенства для обеспечения "гибкости" в системе.

enter image description here

...