но Container PageViewController's Safearea не является stackview.bottomanchor.
pageviewcontroller's safearea is view.safelayoutguide.topanchor < /p>
Я хочу TabmanViewcontrller. .addarrangesubviews, но это внутреннее, поэтому я не могу. < /p>
Как я могу сделать это как вторая картина? < /p>
Код: Выделить всё
class ButtonBarExampleViewController: TabmanViewController, PageboyViewControllerDataSource, TMBarDataSource {
// MARK: Properties
private let stackView: UIStackView = {
let stackView = UIStackView()
stackView.axis = .vertical
stackView.backgroundColor = .red
stackView.translatesAutoresizingMaskIntoConstraints = false
return stackView
}()
private let imageView: UIImageView = {
let imageView = UIImageView()
imageView.backgroundColor = .green
return imageView
}()
private let tempView = UIView()
/// View controllers that will be displayed in page view controller.
private lazy var viewControllers: [UIViewController] = [
ChildViewController(page: 1),
ChildViewController(page: 2),
ChildViewController(page: 3),
ChildViewController(page: 4),
ChildViewController(page: 5)
]
// MARK: Lifecycle
override func viewDidLoad() {
super.viewDidLoad()
// Set PageboyViewControllerDataSource dataSource to configure page view controller.
dataSource = self
// Create a bar
let bar = TMBarView.ButtonBar()
...
// Add bar to the view - as a .systemBar() to add UIKit style system background views.
// addBar(bar.systemBar(), dataSource: self, at: .top)
addBar(bar, dataSource: self, at: .custom(view: tempView, layout: nil))
view.addSubview(stackView)
NSLayoutConstraint.activate([
stackView.topAnchor.constraint(equalTo: view.safeAreaLayoutGuide.topAnchor),
stackView.leadingAnchor.constraint(equalTo: view.leadingAnchor),
stackView.trailingAnchor.constraint(equalTo: view.trailingAnchor),
imageView.heightAnchor.constraint(equalToConstant: 60)
])
stackView.addArrangedSubview(imageView)
stackView.addArrangedSubview(tempView)
}
}
Подробнее здесь: https://stackoverflow.com/questions/793 ... ngesubview
Мобильная версия