Я надеялся, что это ошибка iOS 8 (все равно может быть, все отлично работает в iOS 7), но я все еще вижу это в iOS 8 GM Seed.Встраиваемый .xib появляется в неправильном положении
У меня есть CategoriesView.xib, встроенный в DetailView.xib. Когда отображается DetailView.xib, местозаполнитель UIView отображается в нужном месте, но содержимое CategoriesView.xib отображается ровно на 72 пикселя выше, где они должны. Я использую Autolayout. 72px, кажется, 20px строка состояния + 44px панель навигации + 8px автоматическое ограничение размещения с верхней части изображения.
Внутри CategoriesView.xib, есть на самом деле 5 маленьких значков, представляющих каждую возможную категорию. Каждый значок имеет ограничение ширины/высоты и ведущее ограничение пространства для добавления отступов соседа. Как правило, экран будет показывать только 1-2 категорий, и выполнить это с помощью этого кода:
// all width constraints are part of the categoryViewsWidthConstraints Outlet Collection
// all padding constraints are part of the categoryViewsSpacingConstraints Outlet Collection
// loop through my outlet collection, and set all width and padding constraints to 0
for (int i = 0; i < self.categoryViewsWidthConstraints.count; i++) {
[self.categoryViewsWidthConstraints[i] setConstant:0.0];
[self.categoryViewsSpacingConstraints[i] setConstant:0.0];
}
// now, for the categories that need to show, add the width and padding constraints back
for (int i = 0; i < self.categoryIds.count; i++) {
NSNumber *categoryId = self.categoryIds [i];
[self.categoryViewsWidthConstraints[categoryId.integerValue - 1] setConstant:20.0];
[self.categoryViewsSpacingConstraints[categoryId.integerValue - 1] setConstant:8.0];
}
Опять же, это прекрасно работает в прошивке 7.
Я думал, что это работает, когда внутри CategoriesView. м, я установил:
self.contentView.translatesAutoResizingMaskintoConstraints = true.
это дает мне правильное вертикальное размещение я после, но, к сожалению, я получаю ошибки Автокомпоновка, потому что думает, что CategoriesView должно быть точно 132px в ширину. Из-за этого, значок последней категории получает растягиваются:
Я в недоумении здесь. Я знаю, что это довольно тонко, но какие-то идеи?