как позиционировать базу просмотра на min (X или Y), а не на середине (X или y) SwiftUI - PullRequest
1 голос
/ 04 августа 2020

Я хочу разместить синий вид на основе привязки topTrailing, как это

изображение 2

не нравится

Img

это мой код Xcode12 beta 3

struct Test: View {
    var body: some View {
        ZStack(alignment:.topLeading){
            Color.black
            Rectangle()
                .frame(width:100, height: 100, alignment: .topLeading)
                .position(CGPoint(x: 0, y: 0))
                .foregroundColor(.blue)
        }
        .frame(width: 250, height: 250, alignment: .topLeading)
    }
}

как мне это сделать

Ответы [ 2 ]

0 голосов
/ 06 августа 2020

Просто удалите position, он автоматически отключает c макет, потому что указывает явно определенное местоположение в родительских координатах относительно собственной точки привязки.

демо

struct Test: View {
    var body: some View {
        ZStack(alignment:.topLeading){
            Color.black
            Rectangle()
                .frame(width:100, height: 100, alignment: .topLeading)
                .foregroundColor(.blue)
        }
        .frame(width: 250, height: 250, alignment: .topLeading)
    }
}
0 голосов
/ 04 августа 2020

Для позиционирования относительно верхнего интерлиньяжа:

Используйте

.offset(x: 0, y: 0)

вместо

.position(CGPoint(x: 0, y: 0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...