В чем причина остаточного вертикального интервала между "внутренним" просмотром и содержимым UITableViewCell с помощью раскадровки?

Я использую раскадровку в проекте iOS/xcode со следующей упрощенной "иерархией" (сверху вниз):

  • ViewController (не TableViewController для некоторых причин настройки)
  • Вид
  • TableView (и некоторый другой контент, который не имеет значения, я думаю)
  • Cell
  • ContentView
  • "AnyView" (конкретный тип кажется несущественным, так как для каждого элемента, который я пробовал, происходит следующее)

Когда я устанавливаю ограничения между AnyView и ContentView на Zero Spacing для Top/Bottom/Leading/Trailing, все еще существует довольно "пространство" между ContentView и AnyView. (Я никогда не сталкивался с этим, когда делал подобные вещи только программно.)

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

Я случайно понял, что когда я перетаскиваю представление в ContentView определенным образом, кажется, что раскадровка устанавливает отрицательный интервал -8, который, кажется, "удаляет" этот интервал. Я мог бы просто использовать это число в моих ограничениях, но он кажется несколько случайным. Кто-нибудь знает, что может быть причиной моего нежелательного интервала, или если этот -8 имеет более глубокий смысл (например, Apple, таким образом, заставляет некоторые руководящие принципы проектирования для пользователей раскадровки?)?

Спасибо за понимание!

Ответ 1

В Xcode 6 ограничения могут быть "относительно поля". Поля устанавливаются как нормальное расстояние по умолчанию к краю экрана.

Вы можете отключить это в кнопке "Добавить ограничения"...

enter image description here

Или в инспекторе свойств ограничения...

enter image description here