В SwiftUI появился долгожданный инструмент для точного контроля отступов в секциях List — модификатор listSectionMargins(). Теперь можно гибко настраивать отступы для отдельных секций, не прибегая к костылям.
🤔 Как это работает?
Модификатор принимает:
🔸 edges — стороны для отступов (по умолчанию .all).
🔸 length — величина отступа в точках.
♣️ Пример использования:
List {
Section("Новости") {
Text("Свежие обновления")
}
.listSectionMargins(.horizontal, 20) // Отступы по бокам
Section("Профиль") {
Text("Настройки")
}
.listSectionMargins(.top, 10) // Отступ сверху
}
✅ Ключевые особенности:
🔹 Переопределяет стандартные отступы: заменяет дефолтные отступы, заданные стилем списка.
🔹 Работает с заголовками/подвалами: отступы применяются вокруг header и footer секции.
🔹 Гибкость: можно задавать для конкретных сторон (.horizontal, .vertical, .top и т.д.) или для всех сторон сразу (.all).
🔹 Не влияет на отступы между ячейками (для этого по-прежнему используем listRowSpacing).
⚠️ До iOS 26 приходилось использовать:
🔸 Неочевидные комбинации padding() + listRowInsets().
🔸 Кастомные разделители.
🔸 Костыли с GeometryReader.
Теперь всё решается одним модификатором!
listSectionMargins() — это отличное дополнение для тонкой настройки списков!
➡️ Подписаться на канал
Мобильный трудоголик