Ich bin mir sicher, dass es angesichts des großen Zustroms von Neulingen zu Xcode viele Tipps und Tricks für Xcode gibt, die geteilt werden können.
Was sind deine?
Ich bin mir sicher, dass es angesichts des großen Zustroms von Neulingen zu Xcode viele Tipps und Tricks für Xcode gibt, die geteilt werden können.
Was sind deine?
Antworten:
Option ⌥ Command ⌘ Up Arrow ↑
Ansicht > Wechseln Sie zu Header / Quelldatei
Wechselt zwischen den .m
und .h
Dateien.
- In Xcode 4 ist dies ctrl Command ⌘ Up Arrow ↑
⌘ Command+ Double-Click on a symbol
: Zur Definition eines Symbols springen.
⌥ Option+ Double-Click on a symbol
: Text in der Dokumentation eines Symbols suchen. (Funktioniert nur, wenn das Doc Set des Symbols installiert ist.)
Die Favoritenleiste ist genau wie in Safari zum Speichern von Favoriten. Ich verwende es oft als Speicherort für Verknüpfungen (die Sie per Drag & Drop erstellen können) zu Dateien, die ich gerade verwende. Im Allgemeinen ist dies nützlicher, wenn ich mit einem großen oder unbekannten Projekt arbeite.
Wählen Sie die folgende Menüoption aus, um die Favoritenleiste anzuzeigen:
View
> Layout
>Show Favorites Bar
Tab ⇥ODER Control ⌃ /: Wählen Sie das nächste Argument für die automatische Vervollständigung aus.
Shift ⇧ Tab ⇥ODER Shift ⇧ Control ⌃ /: Wählen Sie das vorherige Argument für die automatische Vervollständigung aus.
Escape ⎋: Zeigt die Popup-Liste für die automatische Vervollständigung an.
Wenn Sie versuchen, nach dem Speichern rückgängig zu machen, wird die folgende Eingabeaufforderung angezeigt:
"Sie sind dabei, den letzten Punkt rückgängig zu machen, an dem diese Datei gespeichert wurde. Möchten Sie dies tun?"
Geben Sie Folgendes in ein Terminalfenster ein, um diese Warnung zu entfernen:
defaults write com.apple.Xcode XCShowUndoPastSaveWarning NO
Fügen Sie dies in die Terminal-Anwendung ein:
defaults write com.apple.Xcode PBXCustomTemplateMacroDefinitions '{"ORGANIZATIONNAME" = "Microsoft";}'
com.yourcompanyname
" in all Ihren Vorlagen:/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Project Templates/Application
com.yourcompany
zu dem Wert zu wechseln , den Sie normalerweise zum Erstellen eines Geräts verwenden. Ich habe BBEdits Multi-Find-and-Replace verwendet, nachdem ich das gesamte Verzeichnis geöffnet hatte. Sie sollten den Wert in allen info.plist
Dateien ersetzen . Ich habe 8 Dateien zum Ändern gefunden. Es ist lächerlich, wie oft ein Build fehlgeschlagen ist, weil ich vergessen habe, diese Zeichenfolge zu ändern.
- Control ⌃ Option ⌥ Shift ⇧ + <Anfangsbuchstabe eines Gruppennamens>
Wenn Sie die drei Tasten oben gedrückt halten, können Sie schnell zu Gruppen auf der linken Seite (Gruppen und Dateien) springen, indem Sie den ersten Buchstaben eines Gruppennamens drücken. Zum Beispiel Control ⌃Option ⌥Shift ⇧Tbringt Sie zu Zielen und Control ⌃Option ⌥Shift ⇧Szur Quelle . Drücken Sie erneut und es springt zu SCM. Manchmal dauert es mehrere Versuche, bis dies funktioniert (ich weiß nicht warum).
Control ⌃ .
Shift ⇧ Control ⌃ .: Wechselt zwischen den Optionen für die automatische Vervollständigung rückwärts.
Control ⌃.(Kontrollperiode) nach einem Wort akzeptiert automatisch die erste Auswahl aus dem Autovervollständigungsmenü. Versuchen Sie log
dann zu tippen Control ⌃. und Sie erhalten eine nette NSLog
Aussage. Drücken Sie erneut, um eine Auswahl zu durchlaufen. Um alle wandelbaren Optionen anzuzeigen, geben Sie NSMu
dann Control ⌃..
Control ⌃ Command ⌘ ? (Während sich Ihr Cursor im Symbol befindet, um nachzuschlagen)
Option ⌥ + <Doppelklicken Sie auf ein Symbol>
Hilfe> Schnelle Hilfe
Klicken Sie oben rechts auf das Buchsymbol, um über das Schnellhilfefenster zur Dokumentation zu gelangen.
- Command ⌘ Option ⌥ + <Doppelklicken Sie auf ein Symbol>
Bringt Sie direkt zur vollständigen Dokumentation.
- Command ⌘ Control ⌃ + <Doppelklicken Sie im Editor>
Verwenden Sie die obige Verknüpfung, um auf seltsame Weise mehrere Wörter auszuwählen. Sie können Wörter an völlig unterschiedlichen Stellen auswählen und dann alle gleichzeitig löschen oder kopieren. Ich bin mir nicht sicher, ob dies nützlich ist. Es ist nur Xcode, soweit ich das beurteilen kann.
Dieser Trick funktioniert in allen Cocoa-Anwendungen auf dem Mac (TextEdit, Mail usw.) und ist möglicherweise eines der nützlichsten Dinge, die Sie wissen sollten.
- Command ⌘ Left Arrowoder Command ⌘ Right Arrowbringt Sie zum Anfang und Ende einer Zeile.
- Control ^ aund Control ^ edas Gleiche tun
- Control ^ nund Control ^ pBewegen Sie den Cursor eine Zeile nach oben oder unten.
- Control ^ fund Control ^ bBewegen Sie den Cursor ein Leerzeichen vorwärts oder rückwärts
Durch Drücken Shift ⇧einer dieser Tasten wird der Text zwischen den Verschiebungspunkten ausgewählt. Setzen Sie den Cursor in die Mitte einer Zeile und drücken Shift ⇧ Control ^ eSie und Sie können bis zum Ende der Zeile auswählen.
Durch Drücken Option ⌥von können Sie mit der Tastatur durch Wörter navigieren. Option ⌥ Control ^ fSpringt zum Ende des aktuellen Wortes. Option ⌥ Control ^ bSpringt zum Anfang des aktuellen Wortes. Sie können auch Option ⌥die Pfeiltasten nach links und rechts verwenden, um jeweils ein Wort zu verschieben.
Probieren Sie es mit NSMutableArray
. Sie können es schnell ändern, NSArray
indem Sie den Cursor nach dem setzen NS
und Shift ⇧ Control ^ Right Arrowdann drücken Delete.
Command ⌘ Shift ⇧ D
Datei > Schnell öffnen ...
Ich bin ein großer Fan der Open Quickly- Funktion, die in Xcode 3.1 und höher besonders gut ist. Wenn Sie eine Datei oder eine Symboldefinition öffnen möchten, die sich in Ihrem Projekt oder in einem Framework befindet, drücken Sie einfach die Tastenkombination, geben Sie einen Teil des Datei- oder Symbolnamens ein, verwenden Sie Up Arrow ↑und Down Arrow ↓wählen Sie das richtige Ergebnis aus (falls erforderlich). und drücken Sie dann Return ↩, um die Datei zu öffnen oder zur Symboldefinition zu navigieren.
Auf Xcode 4:
- Command ⌘ Shift ⇧ o
Außerdem wusste ich bis vor zwei Minuten nichts über Xcode (als schwa in einem Kommentar darauf hinwies), dass, wenn sich das Text-Caret des Editors in einem Wort befindet, wenn Open Quickly aufgerufen wird, dieses Wort als das verwendet wird Öffnen Sie schnell Suchbegriff.
Sie können verwenden:
#pragma mark Foo
... um Methoden in Ihren Quelldateien zu organisieren. Wenn Sie Symbole über das Popup-Menü durchsuchen, wird alles, was Sie Foo
eingeben, in der Liste fett angezeigt.
Verwenden Sie zum Anzeigen eines Trennzeichens (dh einer horizontalen Linie):
#pragma mark -
Dies ist sehr nützlich, insbesondere zum Gruppieren von Delegatmethoden oder anderen Methodengruppen.
# TODO
Aussagen. Nun, wenn es nur auch greifen würde # XXX
, was üblicherweise in der Codebasis verwendet wird, an der ich arbeite ...
Sie sollten immer einen Haltepunkt habenobjc_exception_throw
.
Verwenden Sie den folgenden Code:
NSZombieEnabled = YES;
NSDeallocateZombies = NO;
... um Probleme zu beheben und zu beheben. Weitere Informationen finden Sie im Abschnitt "Auffinden von Speicherlecks" im Dokument "Debugging-Anwendungen " von Apple .
Command ⌘+ Double-click
auf ein Objekt im Dokumentfenster von Interface Builder, um zu dieser Klasse in Xcode zu springen. Dies ist sehr praktisch bei File's Owner .
Ziehen Sie ein benutzerdefiniertes Objekt zur späteren Wiederverwendung zurück in die Bibliothek des Interface Builder.
Control ⌃ Shift ⇧+ Click
auf ein Objekt in Interface Builder, um ein Menü aller Objekte unter der Maus anzuzeigen.
Ctrl+ 2: Greifen Sie auf die Popup-Liste der Methoden und Symbole in der aktuellen Datei zu.
Dies ist sehr nützlich, da Sie mit dieser Verknüpfung vollständig über die Tastatur durch eine Datei navigieren können. Wenn Sie zur Liste gelangen, geben Sie Zeichen ein, und die Liste wählt das Symbol aus, nach dem Sie suchen.
Wenn in Ihrem Fenster sowohl die Detail- als auch die Editoransicht angezeigt werden, können Sie den Editor vergrößern, um die Editoransicht auf die volle Höhe des Fensters zu erweitern. (Dies ist ziemlich leicht zu finden, aber viele scheinen es zu übersehen.)
Sie können dies mit einer der folgenden Methoden tun:
Command ⌘ Shift ⇧ E
Ansicht > Zoom-Editor ein
Ziehen Sie den Splitter (zwischen dem Editorfenster und der darüber liegenden Dateiliste) nach oben.
Holen Sie sich die vollständige Xcode-Tastaturkürzelliste von Colin Wheeler (verfügbar als PDF oder PNG). Drucken Sie es aus und lassen Sie es irgendwo sichtbar (ich habe es an der Wand neben meinem Bildschirm).
Bearbeiten: Aktualisierte Versionen für Xcode 3.2
Keine große Tastenkombination, aber die TODO-Kommentare in der Quelle werden in der Dropdown-Liste Methode / Funktion oben im Editor angezeigt.
Also zum Beispiel:
// TODO: Some task that needs to be done.
wird in der Dropdown-Liste der Methoden und Funktionen angezeigt, sodass Sie direkt darauf zugreifen können.
Die meisten Java-IDEs zeigen eine Markierung für diese Task-Tags in der Bildlaufleiste an, was zwar besser ist, aber auch funktioniert.
# XXX
, und diese werden nicht angezeigt.
⌘- [und ⌘-] zum Einrücken und Einrücken des ausgewählten Textes. Erleichtert das Bereinigen des Quellcodes erheblich .
Doppelklicken Sie auf die eckigen Klammern oder Klammern, um die Übereinstimmung von Klammern und Klammern zu erhalten.
Steuern Sie den Texteditor von Xcode über die Befehlszeile: 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
xed was introduced in Mac OS X 10.5 with Xcode 3.0.
"Strg + Pfeil nach links / rechts" für die Textnavigation innerhalb des Wortes. Ich benutze diese Funktion, um den Cursor von einem "Kamelbuckel" in einer Variablen zum nächsten zu springen.
Xcode unterstützt Textmakros, die über das Menü Textmakro einfügen am Ende des Menüs Bearbeiten aufgerufen werden können. Sie können auch mit Code Sense, der Code-Vervollständigungstechnologie von Xcode, aufgerufen werden.
Um zum Beispiel die Tastenfolge Typing p i m control-period
fügt #import "file"
in Ihren Code, mit file
wie ein editierbares wie mit Code - Vervollständigung Token.
Klicken Sie mit der rechten Maustaste auf eine Variable in Ihrer Funktion und klicken Sie auf Alle im Bereich bearbeiten. Ich habe es oft benutzt, seit ich das herausgefunden habe.
ctrl ⌘ T
Sie können Xcode den Präprozessor über Ihre Info.plist-Datei ausführen lassen:
<key> CFBundleShortVersionString </ key> #ifdef DEBUG <string> 1.0 (Debug) </ string> #sonst <string> 1.0 </ string> #endif
Weitere Informationen finden Sie unter http://developer.apple.com/technotes/tn2007/tn2175.html .
Debugging - Verwendung von GDB
Da ich noch neu in diesem Bereich bin, finde ich das Einfangen und Erkennen von Fehlern eine ziemlich entmutigende Aufgabe. Obwohl die Konsole ein leistungsstarkes Tool ist, liefert sie normalerweise keine sehr intuitiven Ergebnisse, und es kann ebenso schwierig sein zu wissen, was Sie im Debugger sehen. Mit Hilfe einiger von ihnen bei Stack Overflow und dem guten Artikel über das Debuggen, der bei Cocoa With Love zu finden ist , wird es ein bisschen freundlicher.
Navigieren Sie zwischen geöffneten Dateien hin und her:
⌥⌘ ←
⌥⌘ →
Technisch gesehen ein Interface Builder-Tipp, aber es handelt sich um ein Buch-Matched-Paar, daher denke ich nicht, dass dies kein Thema ist ...
Umschalt + Rechtsklick auf eines Ihrer Steuerelemente und Sie erhalten eine schöne Auswahlliste der Objekthierarchie. Kein Klicken, Klicken, Klicken, Frust mehr!
Mit Trackpad:
Getestet mit Xcode 3.2.5.
Der Klassenbrowser in Xcode! Erreicht durch Drücken von shift+ ⌘+c . Sie können den Umfang reduzieren, um nur Ihr aktives Projekt anzuzeigen. Sie erhalten eine weniger übersichtliche Ansicht, solange Sie nur die Klassenhierarchie durchsuchen möchten.
[
an der richtigen Stelle einzufügenIch komme aus einem .NET-Hintergrund, daher bin ich es gewohnt, ein Symbol und dann einen seiner Methodennamen einzugeben. Daher vergesse ich immer, das anzugeben, [
bevor ich mit der Eingabe des Objektnamens beginne. Normalerweise bedeutete dies, dass ich zum Anfang der Zeile gehen und die [
manuell hinzufügen musste . Ich wusste nicht, dass ich nur ]an der aktuellen Cursorposition drücken kann , und es wird automatisch hinzugefügt.
Es gibt verschiedene Möglichkeiten, dies zu verwenden: entweder nach der Eingabe des Funktionsnamens oder unmittelbar vor der Eingabe des Funktionsnamens.
myObject testMethod
]
... wird:
[myObject testMethod]
... mit dem Caret nach dem ]
.
myObject
]
... wird:
[myObject ]
... mit dem Caret direkt vor dem]
.
Letzteres hat den Vorteil (2), dass die Code-Vervollständigung nach den Methoden Ihres Objekts filtert. Während bei ersterem (1) der Versuch, die Code-Vervollständigung unmittelbar danach aufzurufen myObject
, nicht gefiltert wird. Ein weiterer Vorteil von (2) ist, dass es sich eher wie andere Programmiersprachen verhält, die Punktnotation verwenden. Sie geben dann einfach den Namen des Objekts ein, ]anstatt .auf eine Methode zuzugreifen.
Wählen Sie einen Textblock aus und geben Sie cmd- / ein, um ihn zu kommentieren. Wiederholen Sie diesen Vorgang, um die Kommentarzeichen zu entfernen.
Dies ist besonders nützlich, wenn Sie die Klammer durch Doppelklicken auf ausgewogene Zeichen (Parens, Klammern, Klammern) kombinieren.
In der Lage sein, schnell alle Methoden zu sehen, die von einer Superklasse überschrieben werden können. Wenn ich zum Beispiel UITableViewController erweitere, gebe ich einfach meine Implementierung ein:
- ta
und dann drücke ich ESC, um alle Methoden aus meiner Oberklasse zu sehen, die mit "ta" beginnen, wie z
- (UITableViewCell *) tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
Dies funktioniert auch bei der Übernahme von Protokollen.
Command ⌘ alt ⌥ shift T : Zeigen Sie die aktuell bearbeitete Datei im Projektbaum an.
ctrl+ alt+ ⌘+ rum das Protokoll zu löschen
In der API-Referenzdokumentation von Apple werden keine Methoden angezeigt, die von einer Oberklasse geerbt wurden. Manchmal aber auch. Es ist nützlich, den gesamten Funktionsumfang einer Klasse anzeigen zu können - einschließlich einer eigenen benutzerdefinierten Klasse. Sie können den Klassenbrowser (über das Menü Projekt) verwenden, um eine flache oder hierarchische Liste aller Klassen anzuzeigen, die sich auf ein aktuelles Projekt beziehen. Der obere Bereich auf der rechten Seite des Browserfensters zeigt eine Liste der Methoden, die dem im Browser ausgewählten Objekt zugeordnet sind. Auf dem Blatt "Optionen konfigurieren" können Sie "Geerbte Mitglieder anzeigen" auswählen, um geerbte Methoden sowie die von der ausgewählten Klasse selbst definierten Methoden anzuzeigen. Sie klicken auf das kleine Buchsymbol, um zur entsprechenden Dokumentation zu gelangen.