Fill-Space-Equally

Bir konteynır içindeki kardeşler arasında eşit şekilde bir alanı paylaşmak için frame(maxWidth: CGFloat) ve frame(maxHeight: CGFloat) modifier'ını kullanabiliriz.

  • Yatayda eşit şekilde paylaşmak için;

HStack {
    Button("First Button") {}
        .frame(maxWidth: .infinity)
    Rectangle().foregroundColor(.blue)
        .frame(maxWidth: .infinity)
}.frame(height: 100)

2. elemente aslında ihtiyacınız yok ise Spacer() da kullanabilirsiniz.

  • Dikeyde eşit şekilde paylaştırmak için;

VStack {
    Button("First Button") {}
        .frame(maxHeight: .infinity)
        .background(Color.pink)
    Button("Second Button") {}
        .frame(maxHeight: .infinity)
        .background(Color.orange)
}
.border(Color.green, width: 2)
.frame(height: 100)

frame methodunun maxWidth veya maxHeight parametrelerini kullanarak bir konteynır içindeki View'leri yatay yahut dikey olarak eşit alan paylaşacak şekilde konumlandırabiliriz.

Last updated