Модификаторы позволяют изменять размеры/внешний вид и другие параметры вьюшек.
Официальная документация по модификаторам
Обратите внимание, что зачастую порядок использования модификаторов определяет то, каким будет итоговый внешний вид, и будет ли код вообще работать. Вот несколько примеров
Данный вариант валиден и может быть использован
Text("Hello World! Я рад изучать Swift вместе в этой прекрасной среде разработки Xcode") // Корректно .baselineOffset(20) .multilineTextAlignment(.leading)
Но поменять модификаторы местами невозможно
Text("Hello World! Я рад изучать Swift вместе в этой прекрасной среде разработки Xcode") // Не корректно .multilineTextAlignment(.leading) .baselineOffset(20)
Совместное использование padding
и frame
дадут разный результат в зависимости от порядка.
Итоговый размер вьюшки - 250
Text("Hello World!") .frame(width: 200, height: 100, alignment: .trailing) .padding(50)
Итоговый размер вьюшки - 200
Text("Hello World!") .padding(20) .frame(width: 200, height: 100, alignment: .trailing)
Определяет шрифт текстового содержимого
Text("Hello World") // Системный шрифт body .font(.body) // Системный шрифт с измененным размером .font(.system(size: 25)) // Системный моноширный шрифт с размером 23 и уменьшенной насыщенной .font(.system(size: 23, weight: .light, design: .monospaced)) VStack { Text("These two text views have the same font") Text("applied to their parent view.") } // шрифт сразу для всех элементов стека .font(.system(size: 16, weight: .light, design: .default))
Определяет внутренние отступы вью.
Text("Hello, World!") // системный отступ со всех сторон .padding() // отступ заданного размера .padding(30) // отступ сверху и снизу .padding(.vertical, 20) // отступ слева и справа .padding([.trailing, .leading], 40)