gpt4 book ai didi

ios - 基于设备更改 View - SwiftUI

转载 作者:行者123 更新时间:2023-12-05 02:02:22 26 4
gpt4 key购买 nike

我的应用程序最初是为 iPad 设计的,现在我也想为 iPhone 添加功能。有没有办法检查正在使用的设备是什么,然后相应地显示 View ?

结构化英语:

IF current_device == iPhone THEN
DISPLAY iPhoneView
ELSE IF current_device == iPad THEN
DISPLAY iPadView

如果可能的话,我还希望 iPad View 仅在水平方向上可用,然后 iPhone View 在可能的情况下仅在垂直方向上可用。

最佳答案

您要找的是Size Classes .

要在 SwiftUI View 中读取当前水平尺寸类,您可以引用 horizo​​ntalSizeClass 的环境值

@Environment(\.horizontalSizeClass) var horizontalSizeClass

然后在您的 SwiftUI View 中像这样使用它:

var body: some View {
if horizontalSizeClass == .compact {
return CompactView() // view laid out for smaller screens, like an iPhone
} else {
return RegularView() // view laid out for wide screens, like an iPad
}
}

值得注意的是,并非所有 iPhone 都是compact 横向的,compact 尺寸等级在 iPad 上存在,同时处于多任务配置中。您会找到所有可能的组合 hereDevice Size ClassesMultitasking Size Classes 部分下。

一些可能有帮助的文章

关于ios - 基于设备更改 View - SwiftUI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65810300/

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