У меня есть UIViewController
, который содержит UITableViewHeaderFooterView
, который имеет UIView
(SelectorDropDown), который, когда пользователь щелкает по нему, расширяет еще один UIView
(Принадлежит SelectorDropDown).Идея может быть представлена в виде пользовательского выпадающего списка, и она выглядит следующим образом:
Я могу добавить расширяемый вид в свой макет, добавив егов моем UIViewController
виде, несмотря на принадлежность к представлению SelectorDropDown внутри моего UITableViewHeaderFooterView
.Если я не сделаю так, расширяемое представление будет скрыто.Функция, которая обрабатывает сложение:
func setUpDropDown(with viewController:UIViewController){
holderViewController = viewController
//Adding drop drown view
holderViewController!.view.addSubview(dropDrownView)
holderViewController!.view.bringSubviewToFront(dropDrownView)
dropDrownView.topAnchor.constraint(equalTo: bottomAnchor).isActive = true
dropDrownView.trailingAnchor.constraint(equalTo: trailingAnchor).isActive = true
dropDrownView.leadingAnchor.constraint(equalTo: leadingAnchor).isActive = true
dropDrownView.backgroundColor = .red
//dropDrownViewHeightConstraint = dropDrownView.bottomAnchor.constraint(equalTo: holderViewController!.view.bottomAnchor)
dropDrownViewHeightConstraint = dropDrownView.heightAnchor.constraint(equalToConstant: 0)
NSLayoutConstraint.activate([dropDrownViewHeightConstraint])
}
Однако, спросите ожидаемо, когда я скрываю UITableView
, расширяемое представление остается, потому что, фактически, принадлежит представлению UIViewController
.
Есть ли способ, которым я могу это отсортировать?
спасибо