Görünüşe göre, derleyici NSSearchPathDirectory:0
bir dizi olduğunu düşünüyor ve elbette bunun NSSearchPathDirectory
yerine türü bekliyor . Kesinlikle yararlı bir hata mesajı değil.
Ancak nedenlere gelince:
İlk olarak, argüman adlarını ve türlerini karıştırıyorsunuz. İşlev tanımına bir göz atın:
func NSSearchPathForDirectoriesInDomains(
directory: NSSearchPathDirectory,
domainMask: NSSearchPathDomainMask,
expandTilde: Bool) -> AnyObject[]!
directory
ve domainMask
isimler, türleri kullanıyorsunuz, ancak bunları yine de işlevler için dışarıda bırakmalısınız. Öncelikle yöntemlerde kullanılırlar.
- Ayrıca, Swift güçlü bir şekilde yazılmıştır, bu yüzden sadece 0 kullanmamalısınız. Bunun yerine numaralandırmanın değerini kullanın.
- Ve son olarak, sadece tek bir yol değil, bir dizi döndürür.
Böylece bizi bırakır (Swift 2.0 için güncellendi):
let documentsPath = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)[0]
ve Swift 3 için:
let documentsPath = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0]