У меня есть UIView в моем UIViewController в раскадровке, и я хочу добавить ограничение на пространство, которое просматривает расстояние от верхнего края.
Теперь, когда я делаю обычное дело с помощью Ctrl + перетаскивание в главное представление ViewController, я получаю только возможность установить его в верхнее руководство по макету.
Это проблема для меня, потому что в какой-то момент в приложении я собираюсь переместить основное представление вверх примерно на 20-50 пикселей, и что тогда произойдет, это представление, которое у меня есть, не будет перемещаться ... потому что оно не согласовано с супервизором.
Как я могу сделать это вручную в раскадровке или мне нужно добавить это программно?
Я использую xcode 6.
Ответы:
Справа от значения константы ограничения есть стрелка. Если вы нажмете на нее, появится меню, в котором вы можете выбрать, для чего вы хотите сделать свое ограничение относительно. Если вы выберете «Просмотр», он будет закреплен в верхней части представления.
источник
Вы должны иметь возможность сделать это, выделив нужное представление в раскадровке, а затем выбрав его
Editor > Pin > Top Space to Superview
в верхнем меню.источник
TL; DR: вы можете ограничить поле, нажав Altклавишу на клавиатуре.
Можно также добавить, что если представление, которое вы пытаетесь закрепить, не является прямым подчиненным представлением представления, к которому вы хотите его привязать, предлагаемый подход на самом деле неверен. Допустим, иерархия представлений выглядит так, и вы хотите закрепить представление изображения (
Parallax Image View
в данном случае) с представлением контроллера представления (View
в данном случае).Для этого вам просто нужно Control+ Dragот
Parallax Image View
доView
. Это представляет собой выбор по умолчанию, где вы можетеVertical Spacing to Top Layout Guide
прикрепить ихParallax Image View
к верхнему руководству по макету.Вы хотите прикрепить его к верхней части (краю) представления. Для этого вам нужно переключиться на другой набор ограничений, нажавAlt
источник
У меня уже была целая куча ограничений, и я просто хотел их изменить, а не нарушать. Оказывается, если вы дважды щелкните ограничение, которое нужно отредактировать, а затем щелкните элемент, имеющий «.Значение», вы можете просто отключить «Относительно маржи», выбрав этот элемент.
источник
Ответ Дэна работает. Я просто хотел заявить, что если вы установите свое представление в StoryBoard на y <20 и настроите ограничения через панель контактов, оно установится на супервизор:
источник
Если высота вида случайно установлена на 0, руководство по макету с вертикальным пространством до верха НЕ появится. Однако появится руководство по вертикальной компоновке пространства до низа, которое должно было иметь смысл для кого-то в Apple примерно в 2004 году.
источник
Ни один из приведенных выше ответов не сработал для меня, вместо этого мне нужно сделать хак, чтобы установить верхнюю часть моего subview с верхней частью superview вместо этого с помощью руководства по макету Top.
Теперь тебе хорошо идти.
источник