gpt4 book ai didi

ios - SwiftUI 在多平台中获取屏幕大小

转载 作者:行者123 更新时间:2023-11-29 11:27:04 27 4
gpt4 key购买 nike

实际上,我在我的ContentView.swift 文件中使用

UIScreen.main.bounds.size.width 

获取宽度屏幕的尺寸。不幸的是,我不能将它用于 MacOS 目标,因为它需要 NSScreen

NSScreen.main.bounds.size.width

是否有任何通用的 Screen 来获取屏幕尺寸?

最佳答案

为了解决这个问题,我所做的是创建一个具有平台条件的类。

class SGConvenience{
#if os(watchOS)
static var deviceWidth:CGFloat = WKInterfaceDevice.current().screenBounds.size.width
#elseif os(iOS)
static var deviceWidth:CGFloat = UIScreen.main.bounds.size.width
#elseif os(macOS)
static var deviceWidth:CGFloat? = NSScreen.main?.visibleFrame.size.width // You could implement this to force a CGFloat and get the full device screen size width regardless of the window size with .frame.size.width
#endif
}

然后我只需在需要时调用 SGConvenience.deviceWidth

关于ios - SwiftUI 在多平台中获取屏幕大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57696436/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com