Я разрабатываю приложение для iOS, и я использую Storyboard с AutoLayout ON. Один из моих контроллеров просмотра имеет набор из 4 кнопок, и в некоторых случаях я хотел бы, чтобы первый из них исчез.
Если я использую метод setHidden:TRUE
, UIButton становится невидимым, но он все же явно занимает пространство в представлении, а результат - это "дыра", которую я не смог заполнить, чтобы оставшаяся UIButton плавала в направлении сверху основного вида.
В Android я бы просто использовал View.GONE
вместо View.INVISIBLE
, но в iOS я застрял в этом поведении, и я не хочу верить, что единственное решение - это вручную (да, я имею в виду программно) переместите остальные элементы в начало.
Я думал, что смог бы сделать это, установив какой-то Constraint, чтобы сделать все таким же автоматическим, как на Android, но мне не повезло.
Прежде чем отключить автоотключение, может ли кто-то указать меня в правильном направлении?
Я использую IB, но мне тоже нравится программный материал.
UPDATE:
Установка высоты компонента в 0 также не помогает.
Я пробовал что-то вроде этого:
UIButton *b;
CGRect frameRect = b.frame;
frameRect.size.height = 0;
b.frame = frameRect;