2017-10-21 43 views
0

Je suis en train de mettre à jour mon application avec les nouveaux standards iOS 11 et beaucoup de choses ont été dépréciées et maintenant je suis empilé avec cette erreur: "Argument labels ' (contentsOfFile :) » ne correspondent pas disponible surchargeLes étiquettes d'argument '(contentsOfFile :)' ne correspondent pas aux surcharges disponibles

ici vous les codes qui fonctionnait.?

//load plist file 
    var palermoip: NSArray? 
    if let path = Bundle.main.path(forResource: "palermoip", ofType: "plist") { 
    palermoip = NSArray(contentsOfFile: path) 
    } 

tout le monde sait comment puis-je résoudre ce problème Merci d'avance

+0

Il compile pour moi - qui Xcode et la version Swift utilisez-vous? –

+0

Oh ... Assez étrange. Je suis sur la version 9.0.1 (9A1004) –

+0

C'est ce que j'ai. La "version de langue rapide" est-elle définie sur Swift 3.2 ou Swift 4? Quelle est la cible de déploiement? Pouvez-vous le reproduire dans un nouveau projet? –

Répondre

0

I! recommande d'utiliser PropertyListSerialization et le URL r API exaltée

let url = Bundle.main.url(forResource: "palermoip", withExtension: "plist")! 
let data = try! Data(contentsOf:url) 
let palermoip = try! PropertyListSerialization.propertyList(from: data, format: nil) as! [[String:Any]] // or [Any] if the array does not contain dictionaries 

et Swift 4 même PropertyListDecoder