У меня есть 3 кнопки одна под другой. Требуется, чтобы все они были выровнены по центру. Также динамическое содержимое должно соответствовать этим 3 кнопкам. Пожалуйста, помогите мне с этой проблемой. У меня есть лишь смутное представление об объемах контента, сопротивлении сжатию и собственном размере контента. Заранее большое спасибо.
Выравнивание 3 кнопок с динамическим содержимым в объектном C с использованием Autolayout
comment
Самым простым решением было бы использовать представление стека для кнопок и установить это представление стека по центру. для динамического набора содержимого stackviews heightConstraint больше, чем равное отношение.
- person Vishal Sonawane   schedule 05.01.2017
comment
@Vishal: Привет, Вишал, спасибо за ваш комментарий. Не могли бы вы рассказать мне о реализации того же самого, ниже iOS 9?
- person iOSManiac   schedule 09.01.2017
comment
Это будет то же самое. Просто используйте UIView вместо stackView. Примените одинаковое ограничение высоты и одинаковой ширины ко всем кнопкам и обработайте ограничение высоты контейнера UIView.
- person Vishal Sonawane   schedule 09.01.2017
Ответы (2)
Для iOS 9
и более поздних версий:
Используйте UIStackView
, чтобы вставить все ваши buttons
и установите этот stack view
в центре view
. Для динамического содержимого установите stackView's
heightConstraint
больше, чем равно relation
(>=).
Для iOS 8
и более ранних версий:
Просто используйте UIView
вместо UIStackView
. Остальные вещи будут такими же.
person
Vishal Sonawane
schedule
09.01.2017
Вставьте все UIBUtton
в UIStackView
и установите свойства stackViews в соответствии с вашими потребностями.
Чтобы получить представление, см. этот ответ.
Примечание. UIStackView
доступно только для iOS >= 9.
person
shallowThought
schedule
05.01.2017
В зависимости от iOS он должен поддерживать. Stackviews доступны только на iOS 9+, если это не проблема, то да, проще всего использовать stackview.
- person Pancho; 05.01.2017
@Панчо: Правильно. Добавлена подсказка к ответу.
- person shallowThought; 05.01.2017
Что можно сделать, если версия ‹ iOS 9? Большое спасибо за ваш ответ и комментарии.
- person iOSManiac; 05.01.2017
@shallowThought: Большое спасибо за помощь.
- person iOSManiac; 09.01.2017