2014-10-20 101 views
0

我下載了李斯特「生產力應用程序」(1.4版,二零一四年十月十六日)樣本項目從蘋果打造的錯誤:李斯特樣本項目 - 與斯威夫特版本

https://developer.apple.com/library/ios/samplecode/Lister/Introduction/Intro.html#//apple_ref/doc/uid/TP40014701

我的Xcode 6.0。 1在OS X 10.10(優勝美地)上運行。 Objective-C版本運行良好。雨燕的版本在構建失敗,四個錯誤:

  1. /Users/ben/Downloads/ListerAProductivityAppObj-CandSwift/Swift/ListerKit/ListDocument.swift:61:114:「List.Color」沒有一個構件命名爲 'rawValue'

  2. /Users/ben/Downloads/ListerAProductivityAppObj-CandSwift/Swift/ListerKit/ListUtilities.swift:103:31:在條件結合結合值必須是可選類型的

  3. /Users/ben/Downloads/ListerAProductivityAppObj-CandSwift/Swift/Common/List.swift:126:22:'List.Color'無法構造,因爲它沒有可訪問的初始化

  4. /Users/ben/Downloads/ListerAProductivityAppObj-CandSwift/Swift/Common/List.swift:131:30: 'List.Color' 沒有一個名爲 'rawValue'

成員

我不知道爲什麼示例項目不能直接編譯出來?該設置是根據README.md

+1

項目已更新爲Xcode ** 6.1 **,如修訂歷史記錄中所列。枚舉和原始值之間的轉換方法在Xcode 6.0和Xcode 6.1之間改變,比較http://stackoverflow.com/questions/26444107/enums-rawvalue-property-not-recognized/26444348#26444348。 – 2014-10-20 07:36:27

+0

@MartinR那個關於修改歷史的點非常重要,謝謝。 :) – bjfletcher 2014-10-20 08:43:54

+0

我一直在研究這個項目很安靜,我必須承認我仍然在爲之奮鬥 - 我個人認爲這有點混亂。在視圖控制器中觀看代碼,在應用程序委託中存儲UI代碼,在特定於平臺的文件夾中共享庫代碼,這是一個地雷場,需要永遠解開。 – Chris 2015-11-04 09:33:16

回答

1

該項目被列爲需要Xcode 6.1或更高版本。有些事情已經發生了變化,其中之一是來自枚舉的原始值是通過rawValue屬性獲得的,而在6.0.x中是通過toRaw()方法獲得的。

其他錯誤很可能是由類似的更改造成的。

所以我建議你下載最新的6.1 GM版本,它仍然在appstore中不可用(雖然它被列爲「很快可用」),所以你必須從iOS/MacOS開發人員中心手動下載

+0

安東尼奧,非常感謝。 :) – bjfletcher 2014-10-20 08:44:29