web-dev-qa-db-fra.com

Xcode ne peut refactoriser que les codes C et Objective-C. Comment renommer Swift nom de classe dans Xcode 6?

J'ai créé un nouveau projet d'application Single View dans la version bêta de Xcode 6. Je veux renommer Swift la classe de ViewController.Swift vers un autre nom. Mais lorsque je sélectionne Refactor -> Rename, cela donne une erreur Xcode can only refactor C and Objective-C code.

enter image description here

Toute idée de comment renommer Swift classe dans Xcode 6?

UPDATE:

Enfin, Xcode 9 prend en charge le refactoring pour Swift. Il a fallu Apple 3 ans pour ajouter cette fonctionnalité de base. Refactoring

103
Khawar

Vous pouvez changer le nom d'une classe dans l'inspecteur de fichier à droite de Xcode6.

  • ouvre ta classe
  • allez à l'inspecteur de fichiers> section Identifier et taper
  • renommer la classe existante dans le champ "nom".

C'est tout! Auparavant, je renommais manuellement le nom de la classe dans le fichier de la classe.

25
Newone

J'utilise Rechercher> Rechercher et remplacer dans le projet, ce n'est pas parfait, mais cela fonctionne.

15
Pescolly

J'utilise cette façon:

  • Vous pouvez positionner le curseur sur la variable que vous souhaitez renommer
  • Sélectionner l'éditeur - Éditer tout dans Scope (^ ⌘E)
  • Renommez la variable et toutes les occurrences de variable sont automatiquement éditées.
12

De ce tutoriel.

Fractionner votre iOS8 Swift Code

Commençons d’abord par renommer notre contrôleur de vue pour qu’il soit plus significatif. Ouvrez votre fichier ViewController.Swift et remplacez toutes les références à "ViewController" par notre nouveau nom, "SearchResultsViewController". Renommez également le fichier en SearchResultsViewController.Swift.

Si vous essayez d’exécuter l’application à partir d’ici, vous aurez un crash. C’est parce que notre fichier de storyboard n’a pas été mis à jour pour connaître la nouvelle classe! Ouvrez donc le tableau principal, sélectionnez l’objet ‘View Controller’ dans la scène (le volet de navigation de gauche), puis sélectionnez l’Inspecteur de l’identité (troisième bouton, à droite).

À partir de là, changeons la classe de ViewController à SearchResultsViewController. Maintenant, nous devrions être de retour sur la bonne voie. Vérifiez que le projet fonctionne toujours et poursuivons.

10
iPatel

Xcode 9

Xcode 9 prend désormais en charge le changement de nom dans Swift. Cela a été annoncé dans WWDC 2017.

enter image description here

2
Guy Daher

Malheureusement, Apple n'est pas encore prêt à l'implémenter.

Voir http://www.quora.com/Why-isnt-there-a-refactoring-feature-for-Swift-language-in-Xcode-6 pour plus d'informations.

2
vy32