я могу получить положение `View` после разметки в SwiftUI? - PullRequest
2 голосов
/ 10 июня 2019

Есть ли способ получить кадр View после макета? Я хотел бы нарисовать линию, соединяющую два вида после того, как макет разместил их:

enter image description here

Кажется, мне нужно что-то вроде measure в React.

1 Ответ

4 голосов
/ 10 июня 2019

Используйте GeometryReader, чтобы получить кадр каждого вида, и используйте кадр, чтобы определить точки для пути между двумя видами.

struct ContentView : View {
    var body: some View {
        GeometryReader { geometry -> Text in
            let frame = geometry.frame(in: CoordinateSpace.local)
            return Text("\(frame.origin.x), \(frame.origin.y), \(frame.size.width), \(frame.size.height)")
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...