В swiftUI как получить рамку для экрана, на котором запущено мое приложение? - PullRequest
0 голосов
/ 09 апреля 2020

Мне нужен текущий размер экрана в пунктах. Может кто-нибудь показать пример Swift-кода, который получает ширину и высоту экрана?

Ответы [ 2 ]

1 голос
/ 09 апреля 2020

Вы можете легко достичь того, что ищете, с помощью GeometryReader, например:

    GeometryReader { geometry in 
            VStack {
                 Text("Hope this helps!")
            }
            .frame(width: geometry.size.width, height: geometry.size.height)
     }
0 голосов
/ 09 апреля 2020

Ответ Аспери - это то, что я искал. Спасибо. Я был настолько сбит с толку (и ослеплен), пытаясь научиться быстро, что я не думал об очевидном. Дух ...

Чтобы ответить на вопрос, вот код для демонстрационного приложения:

import SwiftUI

struct ContentView: View {
   let w = UIScreen.main.bounds.size.width
   let h = UIScreen.main.bounds.size.height

    var body: some View {
      VStack() {
      Text(String(format: "width: %4.1f",w))
      Text(String(format: "height: %4.1f", h))
    }
   }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...