Справочник: Tool Windows
Горячие клавиши для открытия наиболее часто используемых окон инструментов.
| Горячие клавиши Windows | Горячие клавиши macOS | Tool window | Описание |
|---|---|---|---|
| Alt+1 | ⌘Cmd+1 | Project | Открыть/закрыть панель «Project» — древовидная структура файлов проекта: исходный код, ресурсы, манифесты, конфигурационные файлы (build.gradle, AndroidManifest.xml) |
| Alt+9 | ⌘Cmd+9 | Version Control | Открыть/закрыть панель «Version Control» — интерфейс работы с Git/SVN: лог коммитов, диффы, история изменений, управление ветками и тегами |
| ⇧Shift+F10 | Ctrl+R | Run | Открыть панель «Run» и запустить приложение в режиме выполнения. Использует последнюю конфигурацию запуска (Run Configuration): активный эмулятор, устройство или физический телефон |
| ⇧Shift+F9 | Ctrl+D | Debug | Открыть панель «Debug» и запустить приложение в режиме отладки. Автоматически подключает Android Debug Bridge (ADB), открывает окно Debugger с просмотром переменных, стека вызовов и памяти |
| Alt+6 | ⌘Cmd+6 | Logcat | Открыть панель «Logcat» — живой поток логов Android-системы в реальном времени. Фильтрация по тегу, уровню (VERBOSE, DEBUG, INFO, WARN, ERROR), пакету приложения и PID процесса |
| Esc | Esc | Return to Editor | Вернуть фокус в редактор кода. Закрывает раскрытые панели инструментов (Project, Structure, Find) и скрывает вспомогательные окна, оставляя активным только редактор |
| Ctrl+⇧Shift+F12 | ⌘Cmd+⇧Shift+F12 | Hide All Tool Windows | Свернуть/развернуть все боковые панели инструментов (Project, Console, Logcat, Structure и др.). Освобождает максимальное пространство экрана для редактора кода |
Справочник: Code Completion
Android Studio имеет три типа завершения кода, которые вызываются горячими клавишами:
| Горячие клавиши Windows | Горячие клавиши macOS | Тип | Описание |
|---|---|---|---|
| Ctrl+Space | Ctrl+Space | Basic Completion | Базовое автодополнение кода. Показывает все возможные символы (переменные, типы, методы, поля, пакеты), доступные в текущем контексте. При повторном нажатии переключается между расширениями, включая приватные члены и неимпортированные статические элементы |
| Ctrl+⇧Shift+Space | Ctrl+⇧Shift+Space | Smart Completion | Умное автодополнение с учётом контекста и ожидаемого типа. Фильтрует результаты по релевантности, анализирует типы данных и потоки. Повторный вызов раскрывает цепочки вызовов (method chaining) — позволяет последовательно вызывать методы объекта без промежуточных переменных |
| Ctrl+⇧Shift+⏎Enter | ⌘Cmd+⇧Shift+⏎Enter | Statement Completion | Автозавершение текущей инструкция. Автоматически добавляет закрывающие скобки, точки с запятой, фигурные скобки, обрабатывает if/else, try/catch блоки. Работает с вызовами методов, созданием объектов, lambda-выражениями |
Справочник: Navigation
| Горячие клавиши Windows | Горячие клавиши macOS | Действие | Описание |
|---|---|---|---|
| Ctrl+E | ⌘Cmd+E | Recent Files | Диалог недавно открытых файлов. Список последних переключённых файлов с поиском. Удобно для быстрого возврата между файлами, с которыми ведётся активная работа. Поддерживает навигацию стрелками и Enter для открытия |
| Ctrl+F12 | ⌘Cmd+F12 | File Structure | Панель структуры текущего файла — список всех классов, методов, полей и констант в открытом файле. Позволяет мгновенно перейти к определению любого элемента без прокрутки. Фильтрация по вводу текста |
| Ctrl+N | ⌘Cmd+O | Navigate to Class | Быстрый переход к любому классу в проекте. Поддерживает ввод camelCase (не нужно вводить полное имя), навигацию к строке через `:`, поиск по middle humps (например, "MyClass" находит "TestMyClass"). Включает навигацию к интерфейсам, enum, аннотациям |
| Ctrl+⇧Shift+N | ⌘Cmd+⇧Shift+O | Navigate to File | Поиск и переход к любому файлу или папке в проекте. Ввод / в конце переключает режим на поиск только папок. Ищет по полному пути и имени файла. Работает с AndroidManifest.xml, build.gradle, res/ ресурсами и другими специальными путями |
| Ctrl+Alt+⇧Shift+N | ⌘Cmd+⌥Option+O | Navigate to Symbol | Переход к конкретному символу (методу, полю, констане) внутри класса. Работает в связке с навигацией к классу: указываете класс, затем символ. Полезно для поиска определённого метода или поля внутри большого класса |
| Alt+F7 | ⌥Option+F7 | Find Usages | Находит все места использования выбранного элемента (класса, метода, поля, параметра) в проекте. Открывает панель результатов с группировкой по модулям и файлам. Позволяет перейти к любому использованию или переименовать все вхождения через Refactoring |
Горячие клавиши: General Actions
| Горячие клавиши Windows | Горячие клавиши macOS | Название | Описание |
|---|---|---|---|
| Ctrl+S | ⌘Cmd+S | Save all | Сохраняет все изменённые файлы проекта. Аналог «Save As» — работает мгновенно без диалогов. Сохраняет файлы всех открытых модулей, включая Gradle-скрипты, XML-ресурсы и Kotlin/Java исходники |
| Ctrl+Alt+Y | ⌘Cmd+⌥Option+Y | Synchronize | Синхронизирует файлы проекта с диском. Полезно при работе с внешними редакторами или когда файлы изменяются сторонними процессами. Обновляет кеш IDE и подгружает актуальные версии файлов |
| Ctrl+⇧Shift+F12 | Ctrl+⌘Cmd+F12 | Maximize/minimize editor | Разворачивает редактор кода на весь экран или возвращает к предыдущей компоновке. Скрывает все панели инструментов, оставляя только редактор. Повторное нажатие восстанавливает исходный вид |
| Alt+⇧Shift+F | ⌥Option+⇧Shift+F | Add to favorites | Добавляет выбранный файл, класс или метод в раздел «Favorites». Позволяет создавать персональные списки часто используемых элементов с возможностью настройки шаблонов для поиска |
| Alt+⇧Shift+I | ⌥Option+⇧Shift+I | Inspect current file | Запускает анализ текущего файла по выбранному профилю инспекции кода (Code Inspection). Показывает потенциальные проблемы, предупреждения и рекомендации по улучшению кода |
| Ctrl+` | Ctrl+` | Quick switch scheme | Быстрое переключение между активными схемами (цветовые темы, раскладки клавиатуры, настройки кодирования). Появляется диалог для выбора нужной схемы без открытия настроек |
| Ctrl+Alt+S | ⌘Cmd+, | Open settings | Открывает диалог настроек (Settings/Preferences). Полный доступ ко всем параметрам IDE: темы, шрифты, плагины, компилятор, эмулятор, Git, настройки кода и многое другое |
| Ctrl+Alt+⇧Shift+S | ⌘Cmd+; | Open project structure | Открывает диалог структуры проекта (Project Structure). Настройка SDK, модулей, зависимостей, исходной структуры (sources), библиотек и выходных директорий сборки |
| Ctrl+⇥Tab | Ctrl+⇥Tab | Switch between tabs | Переключается между открытыми вкладками редактора и оконными панелями. Показывает мини-список для быстрого выбора. Работает как с файлами, так и с панелями инструментов (Console, Debug, Run и др.) |
| Нажмите ⇧Shift дважды | Нажмите ⇧Shift дважды | Search everything | Универсальный поиск (Double Shift). Ищет по всему: исходный код, действия меню, настройки, файлы, плагины. Главное окно поиска для любых задач — не нужно помнить точный путь или название |
| Ctrl+F | ⌘Cmd+F | Find | Поиск текста в текущем файле. Открывает строку ввода с подсветкой всех совпадений. Поддерживает точное совпадение, регулярные выражения, регистрозависимый поиск и замену |
| F3 | ⌘Cmd+G | Find next | Переходит к следующему совпадению текущего поискового запроса. Работает совместно с Ctrl+F — повторяет последний выполненный поиск на следующей позиции в файле |
| ⇧Shift+F3 | ⌘Cmd+⇧Shift+G | Find previous | Переходит к предыдущему совпадению текущего поискового запроса. Обратная навигация по результатам поиска Ctrl+F в файле |
| Ctrl+R | ⌘Cmd+R | Replace | Открывает панель замены текста в текущем файле. Позволяет находить и заменять текст с поддержкой регулярных выражений, замены с учётом регистра, замены всех совпадений сразу |
| Ctrl+⇧Shift+A | ⌘Cmd+⇧Shift+A | Find action | Поиск любого действия IDE по названию. Находит команды меню, настройки, инспекции, рефакторинги и другие функции. Полезно когда не знаете точное местоположение функции в меню |
| Ctrl+Alt+⇧Shift+N | ⌘Cmd+⌥Option+O | Search by symbol | Поиск по символу в коде (#, @, $ и др.). Позволяет находить элементы по специальным символам: # для методов, @ для аннотаций, @ для полей. Работает по всему проекту |
| Ctrl+N | ⌘Cmd+O | Find class | Быстрый переход к классу по имени. Включает навигацию к интерфейсам, enum, аннотациям и объектам. Поддержит camelCase ввод и middle humps для сокращённого поиска |
| Ctrl+⇧Shift+N | ⌘Cmd+⇧Shift+O | Find file | Поиск файла в проекте по имени или части пути. Включает все файлы: исходный код, ресурсы, конфигурационные файлы, манифесты, Gradle-скрипты. Отличие от Find class — ищет файлы, а не классы |
| Ctrl+⇧Shift+F | ⌘Cmd+⇧Shift+F | Find in path | Поиск текста по всему диапазону файлов/папок. Открывает диалог с выбором области поиска (весь проект, конкретная папка, модуль). Поддержка регулярных выражений и фильтра по типам файлов |
| Ctrl+F12 | ⌘Cmd+F12 | Open file structure | Открывает панель структуры текущего файла — древовидное представление всех классов, методов, полей и констант в файле. Быстрый переход к любому определению без прокрутки кода |
| Alt+→Right или ←Left | Ctrl+→Right или Ctrl+←Left | Navigate editor tabs | Навигация между открытыми вкладками редактора (вперёд/назад). Работает как история переходов — Alt+Left перемещает к предыдущей позиции, Alt+Right — к следующей. Аналог навигации в браузере |
| F4 или Ctrl+⏎Enter | F4 или ⌘Cmd+↓Down | Jump to source | Переход к источнику объявления (например, от использования к определению переменной/метода). Работает со ссылками на внешние файлы, библиотеки и зависимости модуля |
| ⇧Shift+F4 | ⇧Shift+F4 | Open in new window | Открывает текущий файл или проект в новом окне IDE. Полезно для параллельного просмотра нескольких файлов или изоляции рабочего пространства |
| Ctrl+E | ⌘Cmd+E | Recently opened files | Список недавно открытых файлов с поиском. Показывает последние переключённые файлы и позволяет быстро вернуться к нужному без навигации по дереву проекта |
| Ctrl+⇧Shift+E | ⌘Cmd+⇧Shift+E | Recently edited files | Список недавно редактируемых файлов. Показывает файлы, в которых вносились изменения. Полезен для быстрого возврата к месту последней правки без поиска по истории |
| Ctrl+⇧Shift+⌫Backspace | ⌘Cmd+⇧Shift+Delete | Go to last edit location | Возвращает курсор к месту последней правки в текущем файле. Полезно после навигации по проекту — позволяет вернуться к месту где вы работали |
| Ctrl+F4 | ⌘Cmd+W | Close active editor tab | Закрывает активную вкладку редактора с сохранением изменений. Аналог кнопки X на вкладке. Если файл не сохранён — появляется запрос на сохранение |
| Esc | Esc | Return to editor | Возвращает фокус ввода в окно редактора кода. Закрывает всплывающие окна автодополнения, поиска и другие диалоги, оставляя курсор в коде |
| ⇧Shift+Esc | ⇧Shift+Esc | Hide tool window | Скрывает активную или последнюю используемую оконную панель. Закрывает конкретную панель инструментов без закрытия всей IDE |
| Ctrl+G | ⌘Cmd+L | Go to line | Переход к конкретной строке в файле. Открывает диалог ввода номера строки и столбца. Полезно при работе с большими файлами и известных номеров строк с ошибками |
| Ctrl+H | Ctrl+H | Open type hierarchy | Открывает иерархию типов — древовидную структуру наследования класса. Показывает суперклассы, интерфейсы, подклассы и все реализации в проекте |
| Ctrl+⇧Shift+H | ⌘Cmd+⇧Shift+H | Open method hierarchy | Открывает иерархию методов — все переопределения и реализации конкретного метода. Полезно при работе с полиморфизмом и интерфейсами |
| Ctrl+Alt+H | Ctrl+⌥Option+H | Open call hierarchy | Открывает иерархию вызовов метода — кто вызывает метод и кого вызывает метод. Показывает дерево вызовов, включая косвенные вызовы через другие методы |
| Ctrl++ или Ctrl+- | ⌘Cmd++ или ⌘Cmd+- | Zoom in/out | Масштабирование вкладки редактора (вверх/вниз). Увеличивает или уменьшает визуальное представление кода в редакторе. Аналог масштабирования страниц |
| Ctrl+0 | ⌘Cmd+0 | Fit to screen | Подгоняет масштаб редактора под размер экрана. Сбрасывает текущий зум к оптимальному значению для полного отображения кода в видимой области |
| Ctrl+⇧Shift+1 | ⌘Cmd+⇧Shift+1 | Actual size | Возвращает редактор к реальному размеру (100% масштаб). Сбрасывает все настройки зума для текущего файла |
Горячие клавиши: Editor Actions
| Горячие клавиши Windows | Горячие клавиши macOS | Название | Описание |
|---|---|---|---|
| Alt+Insert | ⌘Cmd+N | Generate code | Генерация шаблонного кода через контекстное меню (Right-click → Generate). Создаёт: getters/setters, конструкторы (no-arg, all-arg), hashCode()/equals(), toString(), onCreate(), методы lifecycle (lifecycle-aware), новый класс/interface/enum |
| Ctrl+O | Ctrl+O | Override methods | Открывает диалог для выбора методов суперкласса для переопределения (override). Создаёт пустые реализации с аннотацией @Override. Полезно для Android lifecycle методов (onCreate, onResume и т.д.), интерфейсов (OnClickListener, etc.) |
| Ctrl+I | Ctrl+I | Implement methods | Открывает диалог для выбора методов интерфейса для реализации (implement). Создаёт каркас методов с пустым телом. Используется при реализации интерфейсов: Runnable, Callable, OnClickListener, OnItemClickListener и др. |
| Ctrl+Alt+T | ⌘Cmd+⌥Option+T | Surround with | Обёртывает выделенный код в конструкции: if/else, try/catch/finally, while, synchronized, finally, else, @SuppressWarnings, Log.d/i/w/e. Позволяет быстро добавить обработку исключений или условия |
| Ctrl+Y | ⌘Cmd+Delete | Delete line at caret | Полностью удаляет строку в позиции курсора вместе с конечной точкой (newline). Сохраняет удалённую строку в буфере обмена для последующего вставки |
| Ctrl+- или Ctrl++ | ⌘Cmd+- или ⌘Cmd++ | Collapse/expand code block | Сворачивает или разворачивает блок кода под курсором (метод, класс, if/else блок). Работает с любыными сворачиваемыми областями: import-блоки, region-комментарии, вложенные конструкции |
| Ctrl+⇧Shift+- или Ctrl+⇧Shift++ | ⌘Cmd+⇧Shift+- или ⌘Cmd+⇧Shift++ | Collapse/expand all blocks | Сворачивает или разворачивает все сворачиваемые блоки в файле одновременно. Полезно для обзора структуры большого файла — быстро сворачивает все методы и классы |
| Ctrl+D | ⌘Cmd+D | Duplicate line | Дублирует текущую строку (при пустом выделении) или выделенный блок кода. Создаёт точную копию ниже оригинала. Быстрая альтернатива Ctrl+C → Ctrl+V для однострочного дублирования |
| Ctrl+Space | Ctrl+Space | Basic code completion | Базовое автодополнение — показывает все доступные символы (переменные, типы, методы, поля, пакеты). Работает по принципу полнотеческого поиска без фильтрации по типу |
| Ctrl+⇧Shift+Space | Ctrl+⇧Shift+Space | Smart code completion | Умное автодополнение — фильтрует результаты по ожидаемому типу и контексту. Учитывает тип переменной, возвращаемое значение метода, потоки данных (nullability) |
| Ctrl+⇧Shift+⏎Enter | ⌘Cmd+⇧Shift+⏎Enter | Complete statement | Автозавершение текущей инструкции — добавляет недостающие элементы: закрывающие скобки, точки с запятой, return-оператор, тело метода |
| Ctrl+Q | Ctrl+J | Quick documentation | Быстрый просмотр документации класса/метода/переменной. Открывает всплывающее окно с описанием, сигнатурой, примерами использования и ссылками на официальную документацию Android/Kotlin/Java |
| Ctrl+P | ⌘Cmd+P | Show parameters | Показывает сигнатуру метода в строке состояния — все параметры с типами, значениями по умолчанию и документацией. Полезно при вызове методов без полной видимости определения |
| Ctrl+B или Ctrl+click | ⌘Cmd+B или ⌘Cmd+click | Go to declaration | Переход к объявлению символа под курсором (класс, метод, поле, переменная). Мгновенная навигация к определению. Работает через все файлы проекта и внешние библиотеки |
| Ctrl+Alt+B | ⌘Cmd+⌥Option+B | Go to implementations | Переход ко всем реализациям выбранного метода или интерфейса. Показывает concrete-классы, которые реализуют абстрактный метод или расширяют интерфейс. Для Android: показывает все OnClickListener реализации |
| Ctrl+U | ⌘Cmd+U | Go to supermethod/superclass | Переход к родительскому методу или суперклассу в иерархии наследования. Позволяет проследить цепочку наследования и переопределений методов |
| Ctrl+⇧Shift+I | ⌘Cmd+Y | Quick definition | Быстрый просмотр определения символа без навигации — показывает определение во всплывающем окне. Аналог Quick Documentation но для исходного кода (переменные, поля, методы) |
| Alt+1 | ⌘Cmd+1 | Toggle project window | Переключает видимость панели «Project» — древовидную структуру файлов проекта. Повторное нажатие сворачивает/разворачивает панель |
| F11 | F3 | Toggle bookmark | Включает/выключает закладку (bookmark) в текущей позиции курсора. Закладки отображаются с маркером в gutter (левой панели). Позволяет отмечать важные места в коде |
| Ctrl+F11 | ⌥Option+F3 | Toggle bookmark with mnemonic | Создаёт закладку с мнемоникой (F1-F12). Открывает список закладок с именами для быстрого перехода. Удобно для постоянного доступа к часто используемым местам кода |
| Ctrl+/ | ⌘Cmd+/ | Comment with line comment | Комментирует/раскомментировать строку или выделение строковым комментарием (// для Java/Kotlin, для XML). Работает по каждой строке выделения отдельно |
| Ctrl+⇧Shift+/ | ⌘Cmd+⇧Shift+/ | Comment with block comment | Комментирует/раскомментировать выделение блочным комментарием (/* */ для Java/Kotlin, для XML). Обхватывает весь блок выделения одним комментарием |
| Ctrl+W | ⌥Option+↑Up | Select growing selection | Расширяет выделение: слово → фраза → блок кода → весь класс. Многократное нажатие последовательно расширяет диапазон выделения по иерархии |
| Ctrl+⇧Shift+W | ⌥Option+↓Down | Shrink selection | Сужает выделение до предыдущего состояния (обратный процесс роста). Постепенно убирает элементы из выделения |
| Ctrl+[ | ⌥Option+⌘Cmd+[ | Move to code block start | Перемещает курсор к началу текущего блока кода (открывающая скобка). Работает с вложенными конструкциями: if, for, while, классы, методы |
| Ctrl+] | ⌥Option+⌘Cmd+] | Move to code block end | Перемещает курсор к концу текущего блока кода (закрывающая скобка). Быстрая навигация к концу метода, класса или вложенной конструкции |
| Ctrl+⇧Shift+[ | ⌥Option+⌘Cmd+⇧Shift+[ | Select to code block start | Выделяет текст от позиции курсора до начала текущего блока кода. Полезно для быстрого выделения блока от курсора до открывающей скобки |
| Ctrl+⇧Shift+] | ⌥Option+⌘Cmd+⇧Shift+] | Select to code block end | Выделяет текст от позиции курсора до конца текущего блока кода. Полезно для выделения всего блока от курсора до закрывающей скобки |
| Ctrl+Delete | ⌥Option+Delete | Delete to end of word | Удаляет текст от позиции курсора до конца текущего слова. Работает по словам, разделяя пробелами и символами пунктуации |
| Ctrl+⌫Backspace | ⌥Option+⌫Backspace | Delete to start of word | Удаляет текст от позиции курсора до начала текущего слова. Удаляет символы назад до первого пробела или разделителя |
| Ctrl+Alt+O | Ctrl+⌥Option+O | Optimize imports | Автоматически убирает неиспользуемые import-строки и сортирует оставшиеся. Для Kotlin/Java — оптимизирует порядок импортов согласно правилам проекта. Удаляет дубликаты |
| Alt+⏎Enter | ⌥Option+⏎Enter | Project quick fix | Главная команда быстрых исправлений. Показывает контекстно-зависимые варианты: импорт класса, преобразование типа, обработка исключения, исправление синтаксиса, рефакторинг. Количество вариантов зависит от контекста |
| Ctrl+Alt+L | ⌘Cmd+⌥Option+L | Reformat code | Автоматически форматирует код по правилам проекта (Code Style). Выравнивает отступы, расставляет скобки, сортирует import-строки. Можно выбрать диапазон — весь файл или выделенный фрагмент |
| Ctrl+Alt+I | Ctrl+⌥Option+I | Auto-indent lines | Выравнивает только отступы (пробелы/табуляции) без полного форматирования. Убирает лишние пробелы и ставит правильные отступы для выделенных строк |
| ⇥Tab или ⇧Shift+⇥Tab | ⇥Tab или ⇧Shift+⇥Tab | Indent/unindent lines | Увеличивает (Tab) или уменьшает (Shift+Tab) отступ для выделенных строк. Сдвигает весь блок вправо или влево на одну единицу отступа (обычно 4 пробела для Java, 2 для Kotlin/XML) |
| Ctrl+⇧Shift+J | Ctrl+⇧Shift+J | Smart line join | Умное объединение строк — сливает выделенные строки в одну с правильной расстановкой пробелов. Для нескольких строк — объединяет их попарно, сохраняя корректный синтаксис |
| Ctrl+⏎Enter | ⌘Cmd+⏎Enter | Smart line split | Умное разделение строки — разбивает длинную строку на несколько с автоматическим сохранением синтаксиса. Полезно для длинных выражений и строк |
| ⇧Shift+⏎Enter | ⇧Shift+⏎Enter | Start new line | Начинает новую строку ПОСЛЕ курсора (как Enter, но курсор остаётся на текущей позиции). Альтернатива Enter без перемещения в начало новой строки |
| F2 или ⇧Shift+F2 | F2 или ⇧Shift+F2 | Next/previous error | Переходит к следующей (F2) или предыдущей (Shift+F2) ошибке/предупреждению в файле. Ошибки подсвечиваются красным/жёлтым с описанием в панели «Problems» |
Горячие клавиши: Debugger
| Горячие клавиши Windows | Горячие клавиши macOS | Название | Описание |
|---|---|---|---|
| ⇧Shift+F10 | Ctrl+R | Build and run | Собирает проект (Gradle build) и запускает приложение на выбранном устройстве/эмуляторе. Исполь Run Configuration для определения цели. Пересобирает только изменённые модули для ускорения |
| ⇧Shift+F9 | Ctrl+D | Debug | Собирает и запускает приложение в режиме отладки (Debug Mode). Автоматически подключает ADB, открывает панель Debugger с просмотром переменных, вызовов и watch-выражений |
| F8 | F8 | Step over | Шаг через — выполняет текущую строку и останавливается на следующей. Не заходит внутрь вызываемых методов (пропускает их). Используется когда не нужно видеть внутренности функции |
| F7 | F7 | Step into | Шаг внутрь — выполняет текущую строку и входит внутрь вызываемого метода. Позволяет пошагово пройти по коду внутри функции. Для методов без тела (native, abstract) переходит к следующей строке |
| ⇧Shift+F7 | ⇧Shift+F7 | Smart step into | Умный шаг внутрь — показывает список всех возможных точек входа при вызове (полиморфизм, лямбды). Позволяет выбрать конкретную реализацию для пошагового входа при нескольких вариантах |
| ⇧Shift+F8 | ⇧Shift+F8 | Step out | Шаг из — выполняет весь текущий метод до конца и останавливается на строке вызова этого метода. Выходит из текущей функции, сохраняя все вычисления |
| Alt+F9 | ⌥Option+F9 | Run to cursor | Запускает выполнение до позиции курсора (ставит временную точку останова и исполняет до неё). Полезно для пропуска больших участков кода без расстановки точек останова |
| Alt+F8 | ⌥Option+F8 | Evaluate expression | Открывает консоль выражений — позволяет вычислять любые выражения в контексте текущей точки останова. Просматривает/изменяет переменные, вызывает методы, проверяет условия прямо во время отладки |
| F9 | ⌘Cmd+⌥Option+R | Resume program | Возобновляет выполнение программы до следующей точки останова или завершения. Продолжает работу приложения после паузы отладки |
| Ctrl+F8 | ⌘Cmd+F8 | Toggle breakpoint | Включает/выключает точку останова на текущей строке (красная точка в gutter). Включённые точки останавливают выполнение, выключённые — пропускаются |
| Ctrl+⇧Shift+F8 | ⌘Cmd+⇧Shift+F8 | View breakpoints | Открывает диалог всех точек останова проекта. Позволяет управлять всеми breakpoint-ами: включать/выключать, удалять, настраивать условия и действия |
Горячие клавиши: Refactoring & Code Generation
| Горячие клавиши Windows | Горячие клавиши macOS | Название | Описание |
|---|---|---|---|
| F5 | F5 | Copy | Копирует выбранный элемент (класс, метод, файл, строку) и создаёт его дубликат. Для классов — создаёт новый класс с суффиксом «Copy», для файлов — копирует файл, для строк кода — создаёт дубликат строки |
| F6 | F6 | Move | Перемещает выбранный элемент (класс, метод, файл) в новое местоположение. Запускает диалог выбора целевой папки/пакета. Автоматически обновляет все ссылки и импорты в проекте |
| Alt+Delete | ⌘Cmd+Delete | Safe delete | Безопасное удаление элемента. Перед удалением проверяет все использования — если элемент нигде не используется, удаляет. Если используется — показывает диалог с предупреждением. Для Android: проверяет ссылки в XML-ресурсах |
| ⇧Shift+F6 | ⇧Shift+F6 | Rename | Переименовывает элемент (класс, метод, переменную, файл) со всеми использованиями в проекте. Автоматически обновляет все ссылки, импорты, строковые литералы (R.id, @string) и комментарии. Для Android: обновляет ссылки в XML |
| Ctrl+F6 | ⌘Cmd+F6 | Change signature | Изменяет сигнатуру метода: параметры (имя, тип, порядок), возвращаемый тип, бросаемые исключения. Показывает все места использования для обновления. Для Android: обновляет вызовы в XML (например, onClick-методы) |
| Ctrl+Alt+N | ⌘Cmd+⌥Option+N | Inline | Встраивает (inline) выбранный метод или переменную — заменяет вызов методом/значением тела. Убирает промежуточный метод, встраивая его код напрямую в место вызова. Полезно для упрощения кода |
| Ctrl+Alt+M | ⌘Cmd+⌥Option+M | Extract method | Извлекает выделенный код в отдельный метод. Запрашивает имя нового метода и автоматически определяет параметры (используемые переменные) и возвращаемый тип. Для Android: создаёт методы в текущем классе |
| Ctrl+Alt+V | ⌘Cmd+⌥Option+V | Extract variable | Извлекает выражение под курсором в переменную. Запрашивает имя и тип новой переменной. Полезно для упрощения сложных выражений и промежуточных значений |
| Ctrl+Alt+F | ⌘Cmd+⌥Option+F | Extract field | Извлекает выражение в поле класса (field). Создаёт экземпляр-переменную класса с указанным именем и типом. Автоматически добавляет модификатор доступа (private, public, protected) |
| Ctrl+Alt+C | ⌘Cmd+⌥Option+C | Extract constant | Извлекает значение или строку в константу (final/static). Создаёт имя автоматически на основе значения (например, "MAX_RETRY" из "3"). Для Android: добавляет в res/values/constants.xml или object |
| Ctrl+Alt+P | ⌘Cmd+⌥Option+P | Extract parameter | Извлекает выражение в параметр метода. Добавляет новый параметр в сигнатуру метода и передаёт выделенное выражение как аргумент. Полезно для параметризации повторяющегося кода |
Горячие клавиши: Version Control
| Горячие клавиши Windows | Горячие клавиши macOS | Название | Описание |
|---|---|---|---|
| Ctrl+K | ⌘Cmd+K | Commit project to VCS | Открывает диалог коммита (Commit) — показывает все изменённые файлы с возможностью выбора哪些 включить в коммит. Вводит сообщение комита, автора, дату. Поддерживает Git (push, amend, stash) и SVN |
| Ctrl+T | ⌘Cmd+T | Update project from VCS | Обновляет проект из системы контроля версий (pull/fetch). Загружает последние изменения из удалённого репозитория, объединяет с локальными. Для Git: pull с разрешением конфликтов слияния |
| Alt+⇧Shift+C | ⌥Option+⇧Shift+C | View recent changes | Открывает панель «Local Changes» — список всех недавних коммитов, неоткоммиченных изменений, добавленных/удалённых файлов. Показывает диффы и позволяет откатить (revert) любые изменения |
| Alt+` | Ctrl+V | Open VCS dialog | Открывает основной диалог системы контроля версий с полным набором Git/VCS команд: log, diff, branch, merge, tag, rebase, cherry-pick, blame. Центральная панель работы с историей проекта |
Горячие клавиши: Layout Editor
| Горячие клавиши Windows | Горячие клавиши macOS | Название | Описание |
|---|---|---|---|
| B | B | Toggle Design/Blueprint | Переключает режим просмотра Layout Editor: Design (визуальный предпросмотр UI-элементов) ↔ Blueprint (схема с координатами и размерами). Blueprint показывает только структурную сетку и ограничения |
| O | O | Toggle orientation | Переключает ориентацию превью: Portrait (вертикальная) ↔ Landscape (горизонтальная). Полезно для проверки адаптивности макета при разных ориентациях экрана |
| D | D | Toggle devices | Переключает отображение выбора устройств (device selector) — панель с доступными эмуляторами и профилями устройств для превью макета |
| R | R | Force refresh | Принудительно обновляет превью Layout Editor. Перерисовывает UI-элементы и применяет актуальные стили. Полезно когда превью не обновляется автоматически после правки XML |
| E | E | Toggle render errors | Переключает панель ошибок рендеринга — показывает предупреждения и ошибки предпросмотра (ненайденные стили, темы, ресурсы, некорректные атрибуты) |
| Delete или Ctrl+click | Delete или ⌘Cmd+click | Delete constraints | Удаляет ограничения (constraints) у выбранного View-элемента в ConstraintLayout. Для полного удаления элемента используйте Backspace/Delete. Удаление constraint помогает при перестроении layout |
| Ctrl+plus или Ctrl+minus | ⌘Cmd++ или ⌘Cmd+- | Zoom in/out | Масштабирует превью Layout Editor (увеличение/уменьшение). Позволяет детально рассмотреть макет или увидеть общую структуру |
| Ctrl+0 | ⌘Cmd+0 | Zoom to fit | Масштабирует превью Layout Editor по размеру рабочей области. Автоматически подгоняет макет для отображения в видимой области без прокрутки |
| Удерживать Space+click и перетащить | Удерживать Space+click и перетащить | Pan | Панорамирование превью — перемещение макета внутри рабочей области при масштабировании больше размеров окна. Удерживайте Space и перетаскивайте мышью |
| Ctrl+B | ⌘Cmd+B | Go to XML | Переходит к XML-исходнику выбранного View-элемента. Из Design-режима мгновенно переходит к соответствующему тегу в Layout XML-файле |
| Ctrl+A | ⌘Cmd+A | Select all components | Выбирает все View-элементы в текущем макете (ConstraintLayout). Полезно для массового применения стилей, constraint или изменения атрибутов |
| ⇧Shift+click или Ctrl+click | ⇧Shift+click или ⌘Cmd+click | Select multiple components | Выбирает несколько View-элементов в Layout Editor. Позволяет работать с несколькими элементами одновременно: перемещать, изменять размер, применять стили |
| Ctrl+G | ⌘Cmd+G | Group into nested graph | Группирует выбранные View-элементы во вложенный ConstraintLayout (Group). Создаёт новый вложенный контейнер для лучшей организации сложного макета |
| ⇥Tab или ⇧Shift+⇥Tab | ⇥Tab или ⇧Shift+⇥Tab | Cycle destinations | Циклически переключается между навигационными пунктами (Navigation Component). Tab — вперёд, Shift+Tab — назад по экранам приложения |
| Ctrl+A | ⌘Cmd+A | Select all destinations | Выбирает все экраны (destinations) в Navigation Graph. Полезно для массового редактирования навигационной структуры |
| ⇧Shift+click или Ctrl+click | ⇧Shift+click или ⌘Cmd+click | Select multiple destinations | Выбирает несколько экранов в Navigation Graph для одновременного редактирования или анализа связей между экранами |