Caractéristiques cachées de Xcode
avec un afflux énorme de débutants à Xcode, je suis sûr qu'il ya beaucoup de conseils et astuces Xcode à partager.
Quels sont les vôtres?
30 réponses
Basculer en-Tête/la Source du Fichier
- "
Option Command Chapter Flèche Montante ↑
Vue > Basculer en-Tête/la Source du Fichier
bascule entre le .m
et .h
fichier.
- dans le Xcode 4 c'est ctrl Command quot Flèche Haut ↑
⌘ Commande + Double-Click on a symbol
: Saut à la Définition d'un symbole.
option + Double-Click on a symbol
: trouver le texte dans la Documentation d'un symbole. (Ne fonctionne que si vous avez installé le jeu Doc de leur symbole.)
Barre De Favoris:
favoris bar est juste comme vous avez dans Safari pour stocker-bien-favoris. Je l'utilise souvent comme un endroit pour stocker des raccourcis (ce que vous pouvez faire en glisser-déposer) pour les fichiers j'utilise maintenant. En général, c'est plus utile quand je travaille avec un grand projet ou inconnu.
pour afficher la barre des favoris, sélectionnez l'option de menu suivante:
-
View
>Layout
>Show Favorites Bar
raccourcis clavier à remplir automatiquement
"151930920 Onglet" ⇥ OU Contrôle ⌃ / : Sélectionnez la prochaine auto-complétion argument.
Shift potential Tabtext OR Shift potential Control ⌃ / : sélectionnez l'argument auto-completion précédent.
Echappement : affiche la liste pop-up de complétion automatique.
désactiver la fonction "annuler le dernier point" avertissement
lorsque vous tentez de défaire après avoir sauvegardé, vous obtiendrez l'invite suivante:
"Vous êtes sur le point d'annuler le dernier point ce fichier a été enregistré. Pensez-vous ce choix?"
pour supprimer cet avertissement, entrez ce qui suit dans une fenêtre de terminal:
defaults write com.apple.Xcode XCShowUndoPastSaveWarning NO
Changer le nom de la compagnie dans les fichiers de modèles
coller ceci dans l'Application finale:
defaults write com.apple.Xcode PBXCustomTemplateMacroDefinitions '{"ORGANIZATIONNAME" = "Microsoft";}'
modifier" com.yourcompanyname
"dans tous vos modèles:
- trouver le répertoire:
/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Project Templates/Application
- utilisez votre outil favori de recherche et de remplacement de fichiers multiples pour remplacer
com.yourcompany
par n'importe quelle valeur que vous utilisez normalement pour construire un périphérique. J'ai utilisé ceux de BBEdit multi-trouver-et-remplacer après j'ai ouvert l'ensemble du répertoire. Vous devriez remplacer la valeur dans tous les fichiersinfo.plist
. J'ai trouvé 8 fichiers à modifier. Le nombre de fois qu'une construction a échoué parce que j'ai oublié de changer cette chaîne est ridicule.
passer rapidement à un groupe dans les groupes et les fichiers volet
- Control Փ Option Փ Shift pontage +
si vous maintenez les trois touches ci-dessus, vous pouvez rapidement passer aux groupes dans la page de gauche (groupes et fichiers) en appuyant sur la première lettre d'un nom de groupe. Par exemple, Control Pond optional Pond Shift Pond T takes you to Targets et Control Pond Option Pond s à Source . Appuyez encore une fois et il saute à SCM. Parfois, il faut plusieurs essais pour que cela fonctionne (je ne sais pas pourquoi).
à Vélo entre l'auto-complétion des choix
contrôle .
Shift Pond Control Pond ". : Cycles en arrière entre les choix d'autocomplétion.
Control п . (Control-Period) Après un mot accepte automatiquement le premier choix du menu autocompletion. Essayez de taper log
puis contrôle des paris . et vous aurez une belle déclaration NSLog
. Appuyez à nouveau sur elle pour parcourir tous les choix. Pour voir tous les choix mutables, tapez NSMu
puis . .
Aide Rapide
contrôle Commande ? (alors que votre curseur est dans le symbole pour regarder vers le haut)
Option: +
Aide > Aide Rapide
pour accéder à la documentation à partir de la fenêtre D'aide rapide, cliquez sur l'icône du livre en haut à droite.
voir la documentation pour un symbole
- Command փ Option փ +
vous amène directement à la documentation complète.
faire des sélections de textes non adjacents
- Commande ⌘ Contrôle ⌃ +
le raccourci pour une étrange façon de sélectionner plusieurs mots. Vous pouvez faire des sélections de mots à des endroits totalement différents, puis les supprimer ou les copier tous en même temps. Vous ne savez pas si c'est utile. C'est Xcode seulement pour autant que je puisse dire.
utilisez les fixations de clés Emacs pour naviguer dans votre code
cette astuce fonctionne dans toutes les applications de cacao sur le Mac (TextEdit, Mail, etc.) et est peut-être l'une des choses les plus utiles à savoir.
- "1519450920 de la Commande" ⌘ Flèche Gauche ou "1519450920 de la Commande" ⌘ Flèche Droite vous Emmène au début et à la fin d'une ligne.
- "1519450920 de Contrôle" ^ un et "1519450920 de Contrôle" ^ e Faire la même chose
- "1519450920 de Contrôle" ^ n et "1519450920 de Contrôle" ^ p Déplacer le curseur vers le haut ou le bas d'une ligne.
- "1519450920 de Contrôle" ^ f et "1519450920 de Contrôle" ^ b Déplacer le curseur en arrière ou en avant d'un espace
en Appuyant sur Shift ⇧ avec un de ces sélectionne le texte entre les points de déplacement. Mettez le curseur au milieu d'une ligne et appuyez sur Shiftų "1519460920 Control ^ e et vous pouvez sélectionner à la fin de la ligne.
presser Option փ vous permettra de naviguer mots avec le clavier. Option ⌥ "1519450920 de Contrôle" ^ f saute à la fin du mot courant. Option ⌥ "1519450920 de Contrôle" ^ b saute au début du mot courant. Vous pouvez également utiliser Option avec les flèches gauche et droite pour déplacer un-mot-à-la-fois.
- Contrôle ^ Flèche Gauche et "1519450920 de Contrôle" ^ Flèche Droite déplace le curseur entre les camelcase parties d'un mot.
essayez avec NSMutableArray
. Vous pouvez rapidement le changer en NSArray
en mettant votre curseur après le NS
, en appuyant sur Shift փ Control ^ Flèche droite puis Supprimer .
Ouvre Vite...
Commande "Shift PCH D
Fichier > Ouvrir Rapidement...
je suis un grand fan de la fonction ouvrir rapidement , qui est particulièrement bon dans Xcode 3.1 et plus tard. Lorsque vous voulez ouvrir un fichier ou une définition de symbole qui est dans votre projet ou dans un cadre, il suffit de frapper le raccourci clavier, Dactylographiez un peu du nom du fichier ou du symbole, utilisez Flèche Haut ↑ et Flèche Bas ↓ pour choisir le bon résultat (si besoin est), puis appuyez sur return փ pour ouvrir le fichier ou naviguer à la définition de symbole.
On Xcode 4:
- Command փ Shift փ o
Open utilise rapidement le mot courant comme terme de recherche
aussi, quelque chose que je ne savais pas au sujet de Xcode jusqu'à il y a deux minutes (quand schwa l'a souligné dans un commentaire) est que, si le texte de l'éditeur caret est à l'intérieur d'un mot quand Ouvrir rapidement est invoqué, ce mot sera utilisé comme le terme de recherche ouvrir rapidement .
Utiliser la directive #pragma pour l'organisation
vous pouvez utiliser:
#pragma mark Foo
... comme un moyen d'organiser des méthodes dans vos fichiers source. Lors de la navigation des symboles via le menu pop up, tout ce que vous placez dans Foo
apparaîtra en gras dans la liste.
pour afficher un séparateur (c'est-à-dire une ligne horizontale), utiliser:
#pragma mark -
C'est très utile, surtout pour regrouper des méthodes de délégués ou d'autres groupes de méthode.
1. Point d'arrêt sur "objc_exception_throw"
vous devriez toujours avoir un breakpoint sur objc_exception_throw
.
2. Débogage des problèmes de conservation/publication avec les variables "Zombie
utiliser le code suivant:
NSZombieEnabled = YES;
NSDeallocateZombies = NO;
... pour déboguer des problèmes de conservation et de publication. Pour plus d'informations, consultez la section " Trouver des fuites de mémoire "de les Applications de débogage D'Apple document .
3. Passer à une classe dans Xcode De Interface Builder
"1519210920 de la Commande" ⌘ + Double-click
sur un objet dans l'Interface du Constructeur de la Fenêtre du Document pour accéder à cette classe dans Xcode. C'est très pratique avec propriétaire du fichier .
4. Réutiliser des objets personnalisés dans Interface Builder
faites glisser un objet personnalisé vers le constructeur de L'Interface Bibliothèque pour réutilisation ultérieure.
5. Sélectionner les éléments se chevauchant dans Interface Builder
Contrôle ⌃ Shift ⇧ + Click
sur un objet dans Interface Builder pour afficher un menu de tous les objets sous la souris.
6. Interface Builder Guide Gestuel
Ctrl + 2 : accédez à la liste popup des méthodes et des symboles dans le fichier courant.
c'est super utile car avec ce raccourci vous pouvez naviguer dans un fichier entièrement en utilisant le clavier. Lorsque vous arrivez à la liste, Commencez à taper des caractères et la liste Tapera-sélectionner le symbole que vous recherchez.
Zoom Dans L'Éditeur De
si votre fenêtre affiche à la fois le détail et la vue de l'éditeur, vous pouvez zoomer sur l'éditeur dans pour étendre la vue de l'éditeur à toute la hauteur de la fenêtre. (C'est assez facilement trouvable, mais beaucoup semblent l'oublier.)
Vous pouvez le faire en utilisant l'une des méthodes suivantes:
Shift E
Vue > Zoom Dans L'Éditeur De
faites Glisser le séparateur (entre l'éditeur fenêtre et la liste des fichiers au-dessus) ascendant.
Get liste complète de raccourcis clavier Xcode de Colin Wheeler (disponible en format PDF ou PNG). L'imprimer et le garder quelque part visible (Je l'ai sur le mur à côté de mon écran).
modifier: mise à jour des versions pour Xcode 3.2
ce n'est pas vraiment un raccourci clavier mais les commentaires TODO dans la source apparaissent dans le menu déroulant Méthode/fonction en haut de l'éditeur.
ainsi par exemple:
// TODO: Some task that needs to be done.
s'affiche dans la liste déroulante des méthodes et des fonctions de sorte que vous pouvez sauter directement.
la plupart des IDEs Java montrent un marqueur pour ces étiquettes de tâche dans la barre de défilement, qui est plus agréable, mais cela fonctionne aussi.
⌘-[ et ⌘-] pour le retrait et unindent texte sélectionné. Rend le nettoyage du code source beaucoup plus facile.
Maintenez la touche Option enfoncée tout en partageant windows pour fractionner verticalement plutôt qu'horizontalement.
double-cliquez sur les crochets ou les parenthèses pour obtenir les crochets et les parenthèses correspondant.
contrôle l'éditeur de texte de Xcode à partir de la ligne de commande: xed
> xed -x # open a new untitled document
> xed -xc foo.txt # create foo.txt and open it
> xed -l 2000 foo.txt # open foo.txt and go to line 2000
# set Xcode to be your EDITOR for command line tools
# e.g. for subversion commit
> echo 'export EDITOR="xed -wcx"' >> ~/.profile
> man xed # there's a man page, too
"Ctrl+Flèche Gauche/Droite" pour faire de l'intra-texte word de navigation. J'utilise cette fonction pour faire passer le curseur de "Camel hump" dans une variable à la suivante.
Xcode supporte les macros de texte qui peuvent être invoquées via le menu Insert Text Macro à la fin du menu Edit . Ils peuvent également être invoqués en utilisant le Code Sense, la technologie d'achèvement de code de Xcode.
par exemple, en tapant la séquence de touches p i m control-period
, vous insérerez #import "file"
dans votre code, avec file
comme jeton modifiable, tout comme avec le code completion.
faites un clic droit sur une variable de votre fonction et cliquez sur Éditer tout dans scope. Je l'utilise beaucoup depuis que je l'ai découvert.
ctrl ⌘ T
vous pouvez demander à Xcode d'exécuter le préprocesseur sur vos informations.fichier plist:
<key>CFBundleShortVersionString</key> #ifdef DEBUG <string>1.0 (debug)</string> #else <string>1.0</string> #endif
voir http://developer.apple.com/technotes/tn2007/tn2175.html pour plus de détails.
débogage - comment utiliser GDB
étant nouveau dans ce encore, je trouve piéger et identifier des défauts un peu redoutable tâche. La console, bien qu'elle soit un outil puissant, ne produit pas de résultats très intuitifs et de savoir ce que vous êtes en regardant dans le débogueur peut être tout aussi difficile à comprendre. Avec l'aide de certains ils les gars sur le débordement de pile et le bon article sur débogage qui peut être trouvé à cacao Avec amour il devient un peu plus amical.
naviguer entre les fichiers ouverts de va-et - vient:
techniquement une astuce de constructeur D'Interface, mais ils sont une paire de livre, donc je ne pense pas que ce soit hors sujet...
Maj + Clic droit sur l'un de vos contrôles et vous obtenez une belle liste de sélection de la hiérarchie des objets. Pas plus qu'à cliquer, cliquer, cliquer, de la frustration!
Avec Trackpad:
- effectuez un Balayage à Trois Doigts vers le Haut - pour Basculer entre la tête et le fichier source, ce qui est plus facile que Cmd + Opt + ;
- glisser trois doigts vers le bas-basculer entre la déclaration et la définition lors de la sélection d'une classe ou d'une méthode, trouvé ces deux types actuellement;
- glisser trois doigts à gauche-retourner ( Cmd + Opt + Gauche );
- glisser trois doigts à droite - aller de l'avant ( Cmd + Opt + à droite );
Testé avec le Xcode 3.2.5.
Le de l'explorateur de classe dans Xcode! Atteint en appuyant sur shift + ⌘ + c . Vous pouvez réduire la portée de n'afficher que votre projet actif. Il vous donne moins encombré aussi longue que vous ne voulez parcourir la hiérarchie de classe.
utilisant ] pour insérer automatiquement [
à l'emplacement correct
je viens d'un arrière-plan.net, donc je suis habitué à taper un symbole puis à taper un de ses noms de méthode. Donc j'oublie toujours d'inclure le [
avant de commencer à taper le nom de l'objet. Habituellement, cela signifiait que je devais aller au début de la ligne et ajouter le [
manuellement. Je ne savais pas que je pouvais appuyer sur ] à la position actuelle du curseur, et il sera ajouté automatiquement.
il y a plusieurs façons d'utiliser ceci: soit après avoir tapé le nom de la fonction, soit juste avant de taper le nom de la fonction.
Méthode 1: après le nom de la fonction
myObject testMethod
]
... devient:
[myObject testMethod]
... avec le caret positionné après le ]
.
Méthode 2: avant le nom de la fonction
myObject
]
... devient:
[myObject ]
... avec le caret placé à droite avant le ]
.
l'avantage de ce dernier (2) est que l'achèvement du code filtrera sur les méthodes de votre objet. Alors qu'avec le premier (1) si vous essayez d'invoquer le code l'achèvement immédiatement après myObject
, il ne sera pas filtré. Un autre avantage de (2) est qu'il se comporte plus comme les autres langages de programmation qui utilisent la notation par points. Vous tapez le nom de l'objet puis tout simplement ] au lieu de . pour accéder à une méthode.
sélectionnez un bloc de texte et tapez cmd-/ pour le commenter. Faites-le de nouveau pour supprimer les caractères de commentaires.
ceci est particulièrement utile lorsqu'il est combiné avec brace-matching en double-cliquant sur des caractères équilibrés (parens, braces, brackets).
être capable de voir rapidement toutes les méthodes qui peuvent être supplantées d'une super classe. Par exemple, lors de l'extension Uitable ViewController, Je n'ai qu'à taper dans mon implémentation:
- ta
et puis J'ai frappé ESC pour voir toutes les méthodes de ma superclasse qui commencent par "ta" tel que
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
cela fonctionne également lors de l'adoption des protocoles.
command chapter alt chapter shift T : révélez le fichier édité dans l'arbre des projets.
utiliser le navigateur de classe pour afficher les méthodes héritées
la documentation de référence de L'API D'Apple ne montre pas les méthodes héritées d'une superclasse. Parfois, cependant. il est utile de pouvoir voir toute la gamme de fonctionnalités disponibles pour une classe -- y compris une classe personnalisée de votre choix. Vous pouvez utiliser le navigateur de classe (à partir du menu Projet) pour afficher une liste plate ou hiérarchique de toutes les classes liées à un projet en cours. La partie supérieure à droite côté de la fenêtre du navigateur affiche une liste des méthodes associées à l'objet sélectionné dans le navigateur. Vous pouvez utiliser la feuille D'Options de configuration pour sélectionner "Afficher les membres hérités" pour afficher les méthodes héritées ainsi que celles définies par la classe sélectionnée elle-même. Vous cliquez sur le petit livre symbole pour aller à la documentation correspondante.