2014-06-15 83 views
1

使用顯式類型this question使用迭代斯威夫特

for score: Int in individualScores { 

} 

允許您使用顯式類型遍歷值。然而,當我嘗試這個,像這樣

for family : UIFont in UIFont.familyNames() { 
    println("Fam: \(family)") 
} 

對象我得到的錯誤「類型標註不符合語境型‘AnyObject’」是什麼造成這個錯誤,我怎麼可以遍歷NSObject的子類的斯威夫特?

回答

3

嗯,首先,familyNames返回NSString的,不UIFonts。但是,這一邊,試圖鑄造陣列,而不是重複的結果:

for family in UIFont.familyNames() as [String] { 
    println("fam: \(family)") 
} 
+0

的String []到 –

+0

是的,他們改變了它沿途某處被寫爲字符串。 –

1

簡單地使這個:

for family: AnyObject in UIFont.familyNames() { 
    println("Fam: \(family)") 
}