2015-12-23 80 views
1

我使用Xcode 7.2創建了一個基於Swift的新項目。在寫viewDidLoad中()方法中下面的代碼在我ViewController.swift文件:使用未解析的標識符'UIUserInterfaceIdiomPad'

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad { 

} 

我得到錯誤信息「未解決的標識符‘UIUserInterfaceIdiomPad’的使用」,編譯器將不會進行。

我懷疑這是與頂部的「導入UIKit」有關嗎?出於某種原因,如果我刪除該行並開始鍵入「導入UI」,它根本不提供自動完成選項。

事情我已經嘗試:

  • 重新啓動計算機和Xcode的
  • 刪除導出數據文件夾
  • 創建斯威夫特
  • 一個新的項目在一個Objective-C基於項目試行代碼(works!)

問題:

  • 爲什麼我會收到此錯誤消息?
  • 爲什麼「導入UIKit」自動完成?

謝謝!

+1

使用UIUserInterfaceIdiom.Pad代替UIUserInterfaceIdiomPad。 – Pushpa

+0

感謝它的工作!關於「導入UIKit」不能自動完成的原因的任何想法? – Jason

+1

不完全知道,但我認爲如果你通過UIUserInterfaceIdiom的UIKit類,它是一個枚舉類型。所以爲了訪問枚舉值,我們必須寫枚舉名稱和(。)我們可以訪問它們的值。 – Pushpa

回答

4

嘗試使用

夫特2

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiom.Pad { 

} 

夫特3

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiom.pad { 

} 

代替

if UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad { 

} 

希望它能幫助你.. :)