Я предполагаю, что вам на самом деле не нужен зеленый цвет — он нужен только для того, чтобы представление было видимым.
Что вы, вероятно, захотите сделать, так это встроить горизонтальное представление стека (содержащее две кнопки) в зеленое представление, а не наоборот (как сейчас).
Попробуйте это так:
Настройки основного стека:
Настройки BtnsStack (думаю, вам нужно пространство между кнопками — я использовал 8
):
Вот как это выглядит во время выполнения с зеленым фоном BtnsStackHolderView
, установленным для очистки:
и, повернув, чтобы показать, что кнопки остаются центрированными по горизонтали:
Изменить как центрировать зеленое представление внутри stackView, не встраивая его в другое представление?
Причина, по которой ваше зеленое представление не центрировано в представлении стека, заключается в том, что Alignment
вашего представления стека установлено на Fill
, что растягивает упорядоченные подпредставления, чтобы заполнить ширину представления стека.
Для представления стека с осью Vertical
параметры выравнивания следующие:
- Наполнять
- Ведущий
- Центр
- Трейлинг
Вот пример с Center
(само представление стека ограничено верхним/начальным/конечным 40 пунктами от краев):
Начиная снизу...
Синий wEqToStack h60
вид ограничен:
- высота = 60
- ширина равна ширине представления стека
Желтый w200 h60
вид ограничен:
Оранжевый вид wNone h60
ограничен:
- width = ограничение ширины не задано
- высота = 60
И зеленый BtnsStackHolderView
не имеет ограничений по ширине или высоте... его размер определяется ограничениями на его содержимое (BtnsStack
с 20 точками с каждой стороны).
Если мы запустим это, мы увидим (красная пунктирная линия просто показывает кадр представления стека):
Упс! Куда делся оранжевый взгляд? Поскольку мы не устанавливали ограничение ширины, а Alignment
представления стека установлено на Center
, в итоге ширина равна нулю.
Таким образом, если у большинства представлений в вашем представлении стека определена собственная ширина, использование center уменьшает количество необходимых содержащих представлений. Но если большинству представлений необходимо растянуть ширину представления стека, вероятно, будет проще встроить контент, который вы хотите центрировать, в содержащие представления.
person
DonMag
schedule
27.06.2020