Xcode 使用未解析标识符“UIUserInterfaceIdiomPad”

Xcode 使用未解析标识符“UIUserInterfaceIdiomPad”,xcode,swift,xcode7,Xcode,Swift,Xcode7,我使用Xcode 7.2创建了一个新的基于Swift的项目。在my ViewController.swift文件中的viewDidLoad方法中写入以下代码时: if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad { } 我使用未解析标识符“UIUserInterfaceIdiomPad”收到错误消息,编译器将无法继续 我怀疑这与顶部的进口UIKit有关?出于某种原因,如果我删除该行并开始键入import UI,它根本不会为我提供自

我使用Xcode 7.2创建了一个新的基于Swift的项目。在my ViewController.swift文件中的viewDidLoad方法中写入以下代码时:

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad {

}
我使用未解析标识符“UIUserInterfaceIdiomPad”收到错误消息,编译器将无法继续

我怀疑这与顶部的进口UIKit有关?出于某种原因,如果我删除该行并开始键入import UI,它根本不会为我提供自动完成选项

我尝试过的事情:

重新启动计算机和Xcode 删除派生数据文件夹 在Swift中创建新项目 在一个基于Objective-C的项目中尝试代码是可行的! 问题:

为什么我会收到这个错误消息? 为什么不导入UIKit自动完成? 谢谢

尝试使用

斯威夫特2

斯威夫特3

而不是

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad {

}
希望它能帮助你

尝试使用

斯威夫特2

斯威夫特3

而不是

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad {

}

希望它能帮助你

使用UIUserInterfaceIdiom.Pad代替UIUserInterfaceIdiomPad。谢谢,它成功了!知道导入UIKit不能自动完成的原因吗?不完全知道,但我认为如果您查看UIUserInterfaceIdiom的UIKit类,它是一种枚举类型。因此,为了访问枚举值,我们必须写入枚举名称和。我们可以访问它们的值。好的,谢谢你如果你想写一个答案,我会确保接受使用UIUserInterfaceIdiom.Pad而不是UIUserInterfaceIdiomPad。谢谢,它成功了!知道导入UIKit不能自动完成的原因吗?不完全知道,但我认为如果您查看UIUserInterfaceIdiom的UIKit类,它是一种枚举类型。因此,为了访问枚举值,我们必须写入枚举名称和。我们可以访问它们的值。好的,谢谢你如果你想写一个答案,我会确保接受根据UIKit注释提供的UI_用户界面_习惯用法功能,用于部署到低于3.2版本的iOS。如果您要部署的最早版本的iPhone/iOS为3.2或更高版本,您可以直接使用-[UIDevice userInterfaceIdiom]。根据UIKit注释,当部署到低于3.2版本的iOS时,会提供UI_USER_INTERFACE_惯用语功能。如果您要部署的最早版本的iPhone/iOS为3.2或更高版本,则可以直接使用-[UIDevice userInterfaceIdiom]。
if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad {

}