UIStackView я могу добавить его с автоматическим изменением размера вместо автоматического размещения - PullRequest
0 голосов
/ 01 апреля 2020

Я пытался разместить UIStackView внутри UIScrollView с масками авторазмера .f flexWidth, .f FlexibleHeight -> т. Е. Растягивать по горизонтали / вертикали, чтобы заполнить представление прокрутки, но представление стека не появляется, если я изменил это на код авторазметки с начальным / конечным / нижним / top ограничения, тогда представления отображаются корректно

toolbar.autoresizingMask = [.flexibleWidth, .flexibleHeight]
        toolbar.backgroundColor = .clear
        toolbar.axis = .horizontal
        toolbar.distribution = .fill
        toolbar.alignment = .fill
        toolbar.spacing = 8


        toolbarScroll.frame = bounds
        toolbarScroll.autoresizingMask = [.flexibleHeight, .flexibleWidth]
        toolbarScroll.showsHorizontalScrollIndicator = false
        toolbarScroll.showsVerticalScrollIndicator = false
        toolbarScroll.backgroundColor = UIColor.green

        toolbarScroll.addSubview(toolbar)

Вот код, который при добавлении после addSubview панель инструментов отображается на панели инструментовScroll

toolbar.translatesAutoresizingMaskIntoConstraints = false

toolbar.leadingAnchor.constraint(equalTo: toolbarScroll.leadingAnchor).isActive = true
toolbar.trailingAnchor.constraint(equalTo: toolbarScroll.trailingAnchor).isActive = true
 toolbar.bottomAnchor.constraint(equalTo: toolbarScroll.bottomAnchor).isActive = true
 toolbar.topAnchor.constraint(equalTo: toolbarScroll.topAnchor).isActive = true

1 Ответ

0 голосов
/ 02 апреля 2020

Вы добавили toolbar к toolbarScroll, но не дали ему фрейм.

toolbarScroll.addSubview(toolbar)

// just to make sure...
toolbar.translatesAutoresizingMaskIntoConstraints = true

// give the toolbar stackView a frame
toolbar.frame = toolbarScroll.bounds
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...