Скрытые возможности Xcode 4


109

Теперь, когда Xcode 4 официально выпущен, пришло время ответить на мой предыдущий вопрос: Скрытые возможности Xcode

Так что они? Что это за скрытые маленькие подсказки и подсказки для Xcode 4, без которых вы не можете жить?

Пожалуйста, ограничьте свои советы только новыми и специфичными для Xcode 4!

Ответы:


42

Если вам нравится, чтобы ваш код выглядел так же хорошо, как он работает, вы, несомненно, использовали #pragma mark - и #pragma mark <name>для обеспечения хорошей визуальной группировки в раскрывающемся списке классов Xcode. Xcode 4 теперь объединяет их в один#pragma mark - <name> .

Подробнее о метке прагмы .

Метка прагмы Xcode


2
// MARK: -Версия (немного более портативная) тоже работает?
Николай Рухе

1
да, оба в порядке: // МАРК: - <имя> или // МАРК: <имя> -
nschmidt

35
  • shift- cmd- optщелчок по символу позволяет вам указать Xcode , где именно в пользовательском интерфейсе вы хотите открыть файл с переходом.

  • cmd- retотключает редактор / помощник версии (правая панель)

  • shift- cmd- Yчтобы скрыть отладчик

  • cmd- 0скрыть навигатор (левая панель)

  • cmd- [1..n]переключение между навигаторами слева

  • cmd- opt- [1..n]переключение между утилитами (обычно это справа)

  • ctrl- [1..n]переключаться между различными связанными файлами в редакторе

В целом, Xcode 4 пытается сохранить согласованность с горячими клавишами. Cmd предназначен для основных команд. Добавление модификаторов предназначено для аналогичных команд, ориентированных на одну конкретную подфункцию.

(Это всего лишь четыре наиболее часто используемых ярлыка, которые я использую постоянно! Я уверен, что со временем он изменится, поскольку мой рабочий процесс будет преобразован в новую актуальность.)


8
shift-cmd-opt-click ... Внимание. Взорван. Спасибо.
Данило Кампос,

1
Ооо ... спасибо за редактирование, Дэйв. Не знал о <kbd> ... </kbd>.
bbum

10
-Щелчок представляет собой сочетание двух ярлыков: ⌘-щелчок по любому символу, чтобы открыть файл, который его объявляет, и ⇧⌥, чтобы вызвать всплывающее окно, где его открыть. Вы можете использовать последнее сочетание клавиш для нескольких других вещей, как я описал в одном из своих ответов.
Питер Хози

3
Кроме того, для тех, кто, как я, использовал ярлыки ⌘- [1–6] Interface Builder для различных инспекторов, они стали the- [1–7], которые вы упомянули при редактировании пера.
Питер Хози

Есть ли способ использовать ⇧⌘⌥-щелчок без использования мыши, а вместо этого использовать клавиатуру (и когда курсор находится на символе, который вы хотите открыть)? ⌘⌥-, открывает новый смежный редактор, но AFAICS учитывает только текущий файл.
Петр Визия

18

Xcode 4 добавляет новую функцию «Фрагменты кода», доступную через Просмотр> Утилиты> Библиотека фрагментов кода. Чтобы добавить новый фрагмент кода, выделите текст в представлении редактора и перетащите его в библиотеку фрагментов. Вы можете либо перетащить фрагмент и вставить его в свой код, чтобы использовать его, либо, что гораздо удобнее, назначить ему ярлык завершения.

Когда вы вводите эту серию букв, она автоматически отображается во всплывающем меню завершения кода по мере того, как вы вводите код. Например, среди многих других у меня настроен фрагмент, так что ввод «svk» будет расширяться до setValue:<#value#> forKey:<#key#>. Это может сэкономить много времени на ввод и / или поиск в меню автозаполнения методов и других кодовых выражений, которые вы используете чаще всего. Xcode поставляется с множеством встроенных сниппетов, которые также очень удобны.


15

Новый ярлык, который я использую чаще всего: смахивание тройным пальцем (вверх или вниз), чтобы поменять местами аналоги (между файлом интерфейса и файлом реализации). Никакой ручной акробатики!

Спасибо https://twitter.com/xctotd/status/48148271759241216


1
@ Дэйв Делонг, как ты можешь сделать это на клавиатуре? Я использовал option-command-up, чтобы перейти от интерфейса к реализации в XCode 3. Это больше не работает в 4. Что нового?
Дэн Розенстарк

5
@yar control-cmd-стрелка вверх / вниз
Дэйв Делонг

Как всегда, спасибо, @Dave DeLong.
Дэн Розенстарк 01

Это все еще так в Lion? Во льве вертикальное смахивание тремя пальцами по сенсорной панели активирует управление полетами. Я предполагаю, что мы говорим о смахивании трекпада, а не о волшебной мыши.
DonnaLea

Не похоже, что в настоящее время есть простое решение, даже если вы переключите управление полетами на смахивание четырьмя пальцами. См. Эту
ветку

13

shift-option -щелкните файл вСписок групп и файловНавигатор проекта или удерживайте shift- optionпри выборе файла на панели переходов.

Вы получите всплывающее окно, в котором можно выбрать, где открыть файл. Новая или существующая вкладка, новый или существующий разделенный (помощник) редактор, новое окно - здесь есть все возможные варианты.


4
Спасибо за указание на это. Очень полезно. Это также работает с выбранным файлом в диалоговом окне «Открыть быстро» (⇧⌘O).
Крис,

2
Мне нравится, как много работы было вложено в маленький виджет пользовательского интерфейса, который большинство людей никогда не увидят. :)
Саймон Уитакер

13

Вкладки в Xcode 4 потрясающие. Каждая из них поддерживает свой собственный отдельный макет, поэтому у вас может быть несколько вкладок с разными элементами, и каждая из них будет размещена соответствующим образом.

Я настраивал свои проекты с тремя макетами - один для объекта проекта, по одному для каждого пера (с указанием исходных кодов класса владельца) и по одному для каждого класса .

Здесь есть одна ошибка: начиная с версии 4.0, Xcode сбрасывает состояние (отключение любых помощников) активной вкладки при повторном открытии проекта. Обходной путь - переключиться на вкладку без помощников для закрытия Xcode, прежде чем закрыть проект. Я зарегистрировал это как номер радара 9178441.


10
  • ctrl- 6выскакивает вниз внутрифайловый сегмент панели перехода (позволяет переходить к методам с клавиатуры)

  • cmd- {/ }выбрать предыдущую / следующую вкладку

  • cmd- Jперейдите к любому редактору (но почему, почему тогда TAB не переключается между ними?)


1
Также обратите внимание, что сочетания клавиш можно настраивать. Я изменил предыдущую / следующую вкладку на ⌘⌥⇠ / ⇢, чтобы соответствовать Chrome.
Peter Hosey

7

Редактор ShortCuts

  • Cmd+ Ctrl+ up/downПереход между файлами .h и .m.
  • Cmd+ Ctrl+ Left/RightПереход между предыдущими редактируемыми файлами / следующими редактируемыми файлами.

Ярлыки макета

  • Cmd+ 0 скрыть или показать навигаторы
  • Cmd+ opt+ 0 скрыть или показать инспекторов
  • Cmd+ Shift+ Yскрыть или показать консоль отладчика.

Ярлыки навигаторов

  • Cmd+ 1 Проект
  • Cmd+ 2 Символ
  • Cmd+ 3 Поиск
  • Cmd+ 4 Проблема
  • Cmd+ 5 Отладка
  • Cmd+ 6BreakPoint
  • Cmd+ 7 Журнал

Переключение вкладок и прыжки

  • Cmd+ { Предыдущая вкладка
  • Cmd+ } Следующая вкладка
  • Cmd+ j Выберите место для прыжка
  • Shift+ Option+ ClickFile Выбрать место для открытия файла
  • Cmd+ Alt+ Option+ ClickВыберите место для открытия метода

Инспекторы

  • Cmd+ Opt+ 1 Инспектор файлов
  • Cmd+ Opt+ 2 Быстрая помощь
  • Cmd+ Opt+ 3Инспектор личности
  • Cmd+ Opt+ 4Инспектор атрибутов
  • Cmd+ Opt+ 5 Инспектор размеров
  • Cmd+ Opt+ 6 Инспектор подключений

Связанные со сборкой

  • Cmd+ B Сборка
  • Cmd+ Shift+ K Чистый
  • Cmd+ . верх

Сворачивание кода

  • Cmd+ Alt+ LeftМинимизировать текущий метод / класс / интерфейс
  • Cmd+ Alt+ Right Развернуть текущий метод / класс / интерфейс
  • Cmd+ Alt+ Shift+ LeftСвернуть все методы / классы / интерфейсы
  • Cmd+ Alt+ Shift+ RightРазвернуть все методы / классы / интерфейсы

это не скрытые особенности
Тодд Хопкинсон

@icnivad - многие скрытые функции доступны с помощью ярлыков, например, переход к файлам, переключение вкладок и т. д.
Сагар Р. Котари

6

Вот первое. Вкладки! Xcode 4 заменил полезную, но редко используемую «панель избранного» в Xcode 3 постоянными вкладками. Это означает, что вы можете сохранить рабочий набор часто используемых документов на панели вкладок.

Не совсем скрытая функция как таковая, но тот факт, что вкладки постоянны, возможно, легко упустить.


2
Кроме того, вы можете назначать вкладкам собственные имена, о чем я не знал, пока Скотт Стивенсон не упомянул об этом: twitter.com/scottstevenson/status/50270610038865921
Брэд Ларсон

5
Да, вы можете дважды щелкнуть вкладки в Xcode 4, чтобы переименовать их, затем использовать именованные вкладки в Prefs> Behaviors (через @scottstevenson)
cocoapriest

3
О, это очень удобно. Таким образом, я могу настроить вкладку отладчика / консоли, отображающую только те, которые затем будут отображаться во время запуска. Это намного приятнее, чем постоянно выскакивать и опускаться.
Данило Кампос,

6

Если у вас возникли какие-либо проблемы с индексированием вашего проекта (например, символы не отображаются при автозаполнении), откройте окно Организатора, щелкните вкладку «Проекты» и используйте кнопку «Удалить», чтобы удалить производные данные для вашего проекта. . Это заставит перестроить индекс проекта, а также выбросить все созданные продукты.


6

Вот несколько полезных горячих клавиш для работы на маленьких экранах:

  • cmd- shift- y- Скрыть и показать область консоли / отладки

  • cmd- 0- Скрыть и показать файловую навигацию


6

Теперь вы можете связывать группы в Project Navigator с папками на диске. Раньше меня всегда беспокоило, что представление файла Xcode 3 может не отражать фактическую структуру проекта на диске.

Создайте новую группу, затем, выделив новую группу, откройте File Inspector. В разделе идентификации справа чуть ниже «Путь» есть небольшой значок, щелкните его, чтобы открыть диалоговое окно браузера файлов, в котором можно выбрать каталог для этой группы.

Инспектор файлов


6
Что здесь нового? Вы всегда можете связать группы с каталогами (Xcode 3: Command-I в группе)
Николай Рухе,

5

Если вы удерживаете клавишу FN, вы можете сканировать документ с помощью курсора, не перемещая курсор.


5

Полоса прыжка:

если ваша внешняя функция записи:

// FIXME: A Bug
// TODO: Later
// ???: ???
// !!!: !!!
// MARK: This a mark

Понравится:

Также вы можете искать:

Щелкните с помощью Option( Shiftодновременно с этим можно выбрать другое окно), вы увидите диалоговое окно, позволяющее указать, где должен открываться файл:

Управления источником:

Если вы используете svn или git, отменить изменения легко:

Строитель интерфейса

В xcode 4.2 вы можете перейти к построителю интерфейса здесь:

Щелкните объект пользовательского интерфейса с помощью Shift, отобразится список всех объектов под точкой.

Попробуйте следующее: выберите объект пользовательского интерфейса, удерживайте его Option, затем наведите указатель мыши на другие объекты. Понравится:

Другой

Горячая клавиша: Shift+Command+Oоткрыть быстро

Пытаться:

#error message
#warning message

И прочтите: Написание и редактирование исходного кода


4

Текстовый редактор :

  • Щелчок по имени класса с помощью Cmd приведет вас к файлу реализации (или заголовку) этого класса, щелчок по объекту с помощью cmd приведет вас к тому месту, где объект объявлен.
  • Щелчок с нажатой клавишей Alt откроет всплывающее окно документации для объекта, на котором вы щелкнули.

Добавление фреймворков : вы не можете просто сделать это, щелкнув правой кнопкой мыши проект или группу (как в Xcode 3). Вам нужно перейти в представление проекта, выбрать цель и перейти на вкладку «Build Phases». Фреймворками можно управлять в разделе «Связать двоичный файл с библиотеками».

Установка целевых зависимостей : аналогично тому, как описано выше, в разделе «Целевые зависимости» на вкладке «Фазы сборки».

Храните свои архивы в безопасности до установки Xcode 4 (из 3). Вы потеряете их (скорее всего) и вместе с ними потеряете способность символизировать журналы сбоев.

Действие удаления - ОСТОРОЖНО : «Удалить» (вместо «Удалить только ссылку ») удаляет файл непосредственно с вашего диска. Он не попадает в корзину, поэтому вы не можете его восстановить.


1
DELETE ужасно. Я не могу получить его обратно из TRASH :(
Сагар Р. Котари

4

cmd- Jпереходит к редактору, но если у вас открыто более одного редактора, вы получаете оверлей со всеми открытыми редакторами. вы можете использовать cmd- иcmd - для переключения между открытыми редакторами.

Кроме того, если вам сложно найти параметр или свойство для чего-либо, окно утилит, вероятно, будет вашим лучшим выбором:

hide and show utilities: cmd- opt-0

То, что здесь обычно скрывают, но не интуитивно понятно:

  • свойства сущности модели данных.
  • свойства модели данных
  • свойства xib

4
  • Вам не нужно объявлять IBAction - методы в .h файле. & Вы можете напрямую подключить его в Интерфейсном Разработчике.

Пример:

-(IBAction)btnLogInTapped:(id)sender {
    // place following method in .m file of your code. save file. Open the
    // .xib file of viewController
    // click on files owner
    // click on connection-inspector.
    // you can view your methods under "received actions"
}
  • Вам не нужно объявлять переменные , если вы создаете для них свойство.

Пример:

// a property declared in .h File of your view controller.
@property (nonatomic, retain) LogInVCtr *nxtLogInVCtr;

// synthesize above property in .m File
@synthesize nxtLogInVCtr;
// or
@synthesize nxtLogInVCtr = _nxtLogInVCtr;
// and you are done, you don't need to declare variable for it.

3

Один из моих любимых - предпочтение поведения «Открытая вкладка». Если вы перейдете к «Поведение» в настройках, вы можете настроить переход на определенную вкладку при запуске цикла. Вы можете назвать вкладку, что-то вроде «Отладка», и Xcode4 создаст ее для вас, если она не существует, и перенесет вас туда, когда вы начнете отладку. Вы можете настроить эту вкладку так, как вам нравится, для сеансов отладки, и она будет оставаться такой после того, как вы ее закроете, поэтому всякий раз, когда вы выполняете запуск, Xcode4 будет настроен так, как вы этого хотите, на отдельной вкладке. Вы даже можете выделить эту вкладку в отдельное окно, и в этом случае Xcode4 будет открывать новое специально настроенное окно «Отладка» каждый раз, когда вы запускаете запуск! Эта функция хороша тем, что она сохраняет вашу обычную вкладку или окно редактирования кода незагроможденными панелями журнала и отладчика. Просто закройте "


Гениально! Это меня беспокоило целую вечность.
Imron

2

В XCode3 была опция «Переименовать проект». Теперь вам просто нужно дважды щелкнуть (второй щелчок медленно), чтобы переименовать проект, и все готово.


2

Чтобы ограничить количество одновременных операций сборки

Это (несколько) скрытое предпочтение, которое позволяет вам определять количество одновременных задач компиляции:

defaults write com.apple.dt.Xcode IDEBuildOperationMaxNumberOfConcurrentCompileTasks 4

Отключение индексирования в среде IDE

Это отключает индексацию кода, что может сэкономить много ресурсов в больших проектах:

defaults write com.apple.dt.XCode IDEIndexDisable 1

для повторного включения:

defaults delete com.apple.dt.XCode IDEIndexDisable

Обратите внимание, что вы должны выйти из Xcode, установить желаемые значения предпочтений, изменения вступят в силу при перезапуске Xcode.


1

Если вы предпочитаете использовать vim / emacs, работающий, скажем, в Терминале или любом другом внешнем редакторе, вы можете просто создать свой проект xcode, добавить файлы и тому подобное, а затем переключиться на редактирование указанных файлов, используя то, что вам больше подходит; всякий раз, когда вы переключаете фокус на окно xcode4, измененные файлы будут перезагружены (также было в случае с Xcode3), и вы можете построить / запустить свое приложение.


1

Два вида указания местоположения сборки с использованием настроек XCode4.

  1. Местоположение, указанное целями - Каталог сборки находится в каталоге вашего проекта.
  2. Расположение в производных данных (рекомендуется XCode, как вы можете видеть на снимке экрана) - каталог сборки находится в указанном местоположении DerivedData (например, здесь, в моем случае /Users/digicorp/Library/Developer/XCode/DerivedData)

Пожалуйста, посмотрите следующие снимки экрана.

введите описание изображения здесь

введите описание изображения здесь


0

БЫСТРАЯ ПОМОЩЬ

Ctrl+ Option/ Alt+f

Найдите быструю помощь. Например,

@property (nonatomic, retain) NSString *strQuery;

Мой текстовый курсор находится в NSString&, если я нажму Ctrl+ Option+,f в инспекторе / утилитах отобразится быстрая документация.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.