37 votes

Comment le NSIndexPath initialisation changé dans Swift3?

Je suis en train de suivre les cours de la Pomme de Commencer à Développer des Applications iOS (Swift) tutoriel et ont presque terminé. J'ai dû modifier plusieurs parties du tutoriel que j'utilise Xcode 8 (qui, je pense, utilise Swift 3 au lieu de Swift 2). Cependant, je suis en cours d'exécution dans l'erreur de compilation suivant et je ne sais pas pourquoi:

Argument labels (forRow:, inSection) do not match any available overloads

dans la fonction suivante:

@IBAction func unwindToMealList(sender: UIStoryboardSegue) {

    if let sourceViewController = sender.sourceViewController as? MealViewController, meal = sourceViewController.meal {
        // Add a new meal
        let newIndexPath = NSIndexPath(forRow: meals.count, inSection: 0)
        meals.append(meal)
        tableView.insertRows(at: newIndexPath, with: .bottom)
    }

}

Je suppose qu'il existe une autre initialiser pour NSIndexPath qui a changé dans l'Swift 3, mais je ne le trouve pas. Suis-je en train de faire quelque chose de mal?

Merci,

106voto

iOSGeek Points 2264

NSIndexPath a été changé à l' IndexPath

essayez IndexPath(row: Int, section: Int)

Référence de l'API : indexpath

Swift 3.0 Developer Preview

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X