Avatar ·

在Swift中确定设备类型(iPhone/iPad):UI_USER_INTERFACE_IDIOM() 及替代方案

大家好!我刚开始学习Swift,在确定设备类型(iPhone或iPad)时遇到了问题。在旧的Objective-C项目中,我见过宏 UI_USER_INTERFACE_IDIOM(),但在Swift中它不能直接使用。

我需要编写代码,让它在iPad和iPhone上有不同的表现。例如,在iPad上我想用 UISplitViewController 显示控制器,而在iPhone上则用普通的 UINavigationController。

这是我尝试过的,但无法编译:

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad {
    // iPad
} else {
    // iPhone
}

Xcode报错:“Use of unresolved identifier 'UI_USER_INTERFACE_IDIOM'”。如何在Swift中正确确定设备类型?有没有比这个旧宏更现代的方法?提前谢谢!

<<>>

在Swift中确定设备类型的正确方法

在Swift中,宏 U