Как я могу изменить высоту вида, который присутствует в StackView - PullRequest
1 голос
/ 24 октября 2019

У меня есть пользовательский UIView, использующий для пользовательского UITabBar, высота которого фиксирована 50, и я добавляю просмотр стека для каждой кнопки, но мне нужно, чтобы высота средней кнопки была больше.

let view: UIView = views[3]
view.heightAnchor.equalToConstant(100.0).isActive = true

let stackView: UIStackView = UIStackView(arrangedSubviews: [views])
     stackView.translatesAutoresizingMaskIntoConstraints = false
     stackView.axis = .horizontal
     stackView.distribution = .fillEqually
     addSubview(stackView)
     stackView.topAnchor.constraint(equalTo: topAnchor).isActive = true
     stackView.bottomAnchor.constraint(equalTo: bottomAnchor).isActive = true
     stackView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true
     stackView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true

Как изменить высоту определенного представления внутри stackView?

Ответы [ 2 ]

0 голосов
/ 24 октября 2019

Вы хотите изменить свойство Alignment представления стека ...

Предполагая 5 представлений, каждое с ограничением по высоте 60, и вы хотите, чтобы 4-е представление (views[3]) имеловысота 100.

Выравнивание StackView Top:

enter image description here

Выравнивание StackView Center:

enter image description here

Выравнивание StackView Bottom:

enter image description here

0 голосов
/ 24 октября 2019

Возможно, я не понимаю вашу проблему, но вы можете изменить высоту любого вида, используя ограничения, как вы уже сделали. То же самое, когда представление является подпредставлением стека. Stackview обновляет свой размер, чтобы удовлетворить свои ограничения. У вас должна быть ссылка на ограничение высоты представления внутри стека. Тогда вы можете изменить его, когда это необходимо. Также было бы неплохо установить свойство stackviews alignment для желаемого вида.

let heightConstraint = view.heightAnchor.equalToConstant(100.0)
heightConstraint.isActive = true
.
.
.
heightConstraint.constant = 150
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...