AutoLayout Xcode6: для этого нужны ограничения для автоматического размещения:

Я новичок в autolayout (я хорош в autoresizing). Мое требование:-

  1. У меня есть 2 вида (скажем, синий и зеленый, ширина и высота обоих видов составляет 300 пикселей в iPhone5). Высота и ширина обоих видов могут меняться в зависимости от разрешения экрана. Происхождение X и Y также может измениться.2. При автоматическом изменении размера я использую эту маску для обоих видов для моего требования

  2. Какие ограничения я должен использовать для этого авторазмера маски.

1 ответ

Неясно, являются ли синие и зеленые братьями и сестрами или один содержит другой.

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

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

Это можно сделать с помощью языка визуального формата со строками, такими как "H:|-(10)-[view]-(10)-|" и "V:|-(10)-[просмотр]-(10)|". Это предполагает, что нет никаких других конфликтующих ограничений, которые пытаются установить высоту и ширину вида.

Другие вопросы по тегам