Я не могу найти способ порадовать ограничения Auto Layout
Я пытаюсь сделать этот простой макет:
Это просто UICollectionViewCell
,
Но когда я ставлю все ограничения автоматического размещения, которые, по моему мнению, необходимы, я получаю это предупреждение:
NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
"<NSLayoutConstraint:0x17028dd40 H:[UIImageView:0x13fd3b000(48)]>",
"<NSLayoutConstraint:0x17028e2e0 H:|-(8)-[UILabel:0x13fd3bfe0'Something as a title...'] (Names: '|':_UIVisualEffectContentView:0x13fd3ace0 )>",
"<NSLayoutConstraint:0x17028e380 UILabel:0x13fd3bfe0'Something as a title...'.leading == UIImageView:0x13fd3b000.leading>",
"<NSLayoutConstraint:0x17028e470 H:[UIImageView:0x13fd3b000]-(8)-[UILabel:0x13fd3b140'Lady Oracle']>",
"<NSLayoutConstraint:0x17028e4c0 H:[UILabel:0x13fd3b140'Firstname Lastname']-(8)-| (Names: '|':_UIVisualEffectContentView:0x13fd3ace0 )>",
"<NSLayoutConstraint:0x17028e830 H:|-(0)-[UIVisualEffectView:0x13fe0ebd0] (Names: '|':UIView:0x13fe142d0 )>",
"<NSLayoutConstraint:0x17028e8d0 H:[UIVisualEffectView:0x13fe0ebd0]-(0)-| (Names: '|':UIView:0x13fe142d0 )>",
"<NSAutoresizingMaskLayoutConstraint:0x17428ee70 h=-&- v=-&- _UIVisualEffectContentView:0x13fd3ace0.width == UIVisualEffectView:0x13fe0ebd0.width>",
"<NSAutoresizingMaskLayoutConstraint:0x17028fd20 h=--& v=--& H:[UIView:0x13fe142d0(50)]>"
)
Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x17028dd40 H:[UIImageView:0x13fd3b000(48)]>
Как можно заключить из журнала, у меня есть следующие ограничения:
- вид снизу контейнера: снизу, впереди и сзади выровнены по супер-виду
- title: top, начальный и конечный интервал для просмотра контейнера. Нижний интервал для аватара пользователя.
- аватар пользователя: иметь определенный размер (ширину и высоту), выровненный по горизонтали с заголовком, интервал по вертикали с заголовком, нижнее пространство для контейнера.
- имя пользователя: верхний выравнивается по аватару пользователя, ведущий интервал к аватару пользователя, конечный интервал до контейнера.
У меня не может быть достаточных ограничений, чтобы сделать макет таким, каким я хочу, и избавиться от предупреждения. Макет выглядит, как и ожидалось, хотя.
1 ответ
Есть две вещи, о которых я могу думать:
Вы забыли установить вид с помощью..
[view setTranslatesAutoresizingMaskIntoConstraints:NO];
размер ячейки collectionView слишком мал, когда представление collection пытается создать макет.