Вертикально распределить две горизонтальные ряды кнопок - PullRequest
0 голосов
/ 14 мая 2019

Я пытаюсь динамически распределить два горизонтальных ряда кнопок по вертикали в IB, XCode 10.2.1. Текущие усилия создали это: [Storyboard for button rows [][1][1] Две строки могут быть распределены со значениями интервалов в вертикальном стеке, но я хочу, чтобы он динамически распределялся по вертикали в зависимости от того, сколько вертикального пространства доступно.

подробности: Два UIStackViews встроены в вертикаль UIStackView. В качестве попытки заставить его работать, я также встроил вертикальную UIStackView в UIView, размер которой уменьшен до доступного пространства в нижней части этого снимка экрана (называемого «UIStackView», вы можете увидеть его как больший прямоугольник между названием альбома и дном). Ни один из параметров «Распределение» по вертикали UIStackView не влияет на распределение двух горизонтальных рядов.

Я пропустил ограничение? Мое последнее средство - программно регулировать расстояние в вертикальном стеке в зависимости от размера экрана.

Кроме того, не указано ниже: вершина вертикали UIStackView не прикреплена к вершине UIView - когда я это делаю, я получаю один ряд сверху, а один ряд снизу, когда я использую «равный интервал». Когда в этой ситуации вы выбираете «заполнить одинаково», две строки находятся очень близко друг к другу у основания, и «Название альбома» смещается вниз, чтобы соответствовать ему (каков наилучший способ сохранить заголовок альбома там, где он есть, BTW?). Возможно, ответ действительно заключается в этой ситуации, но с другими ограничениями ...

Вот структура и ограничения (верхний ряд и нижний ряд имеют одинаковые ограничения) .: enter image description here enter image description here

и вот ограничения для охватывающего UIView («Stack View»): enter image description here

Заранее спасибо! Много!

1 Ответ

1 голос
/ 15 мая 2019

Пара способов сделать это ... Вероятно, самый простой способ - использовать "интервальные виды".

Вот макет с Просмотреть как: iPhone 8

enter image description here

С этим макетом у меня есть 3 красных "видовых пространства", включенных в вертикальный вид стека.Они установлены равными высотами друг к другу, что в итоге дает вам равное вертикальное «расстояние».Очевидно, вы измените цвет фона на прозрачный, чтобы вы его не видели.

Примечания:

Я дал каждой кнопке ограничения ширины и высоты 44

.Использование горизонтальных стеков:

  • Выравнивание: заливка
  • Распределение: равное расстояние
  • Интервал: 0

Вертикальное представление стекаограничение 20 пунктов, ведущее / тянущее / нижнее к виду, а верх - 20 пунктов от нижней части метки ... с:

  • Выравнивание: заполнить
  • Распределение:Заполните
  • Интервал: 0

Вот точно такой же макет с Вид: iPhone 4s , так что вы можете видеть, что его размерыСам по желанию, без каких-либо изменений:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...