2014-01-20 3 views
0

Вот скриншот: enter image description hereAutoLayout: 3 просмотров в контроллере

Как применять ограничения, так что

  1. красный вид остается на той же высоте, независимо от 3,5 или 4-дюймовый форм-фактор
  2. зеленый и синий одинаковую ширину и одинаковую высоту
  3. зеленый, синий и красный имеют стандартный интервал к содержащим зрения
  4. красный, зеленый, синий имеют интервал для друг друг
  5. зеленый подстраивается красным на правой стороне
  6. синие совмещается с красным в левой части

Приложение работает только в портретном режиме. Xcode 5 и IOS 7.

Благодаря

+0

С какими ограничениями вы сталкиваетесь?Не говорите им все, потому что это было бы правдой, если бы вы абсолютно ничего не делали. Если вы скажете, что вы сделали до сих пор, люди с большей вероятностью помогут вам. – Abizern

+1

И на самом деле просто попробуйте добавить ограничения в соответствии с вашим списком. Это должно быть очень просто. – sha

+0

У вас есть нумерованный список ограничений для вашего вида. Некоторые элементы фактически включают более одного ограничения, но просто просматривают список один за другим и добавляют ограничения в представление. – Fogmeister

ответ

0

Это так просто, если вы попробуете.

  1. Для красного, исправить левое, правое & максимальное значение, как в контейнере.
  2. Для синего, исправить левое & дно, аналогично для зеленого, исправить право & снизу относительно родительских видов.
  3. Ctrl + перетаскивание с синего на зеленый & выберите вариант высоты из всплывающего окна. В следующий раз повторите для ширины.
  4. Для красного цвета исправьте высоту от ограничений.
  5. ctrl + перетащить с синего на зеленый & установить свое правое положение.
  6. Ctrl + перетаскивание из зеленого в красный & выберите верхнее положение.

Сообщите мне, если он не работает для вас.

+0

Работает так, как вы сказали. Благодарю. – mrd

0

Эти ограничения в визуальном формате будет делать то, что вы хотите ...

@"|-[redView]-|" 
@"|-[blueView]-[greenView(==blueView)]-|" 
@"V:|-[redView(==100)]-[blueView]-|" 
@"V:[redView]-[greenView]-|" 

Если добавить этот набор ограничений (либо в Interface Builder или кода, используя visualFormatLayout), тогда вы получите то, что хотите.

Конечно, это предположить, что вы используете только стандартное расстояние между сепаратором и красной высоты вид 100.

Синий и зеленый будет регулировать их высоту в соответствии с размером экрана.

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

Фактически, в вашем вопросе вы только что указали список ограничений для своего вида. Просто используйте Interface Builder, чтобы вставлять эти ограничения один за другим.

Смежные вопросы