熟練這些疹娶,才會知道 Android studio 有多高效

Android Studio 常用高效快捷鍵

整理Android群英傳和網(wǎng)上出現(xiàn)的比較完整AS的快捷小技巧. mac版已測, win大部分已測試. 最后有一個整理的完整快捷鍵表格. win也好mac也好, 如果快捷被修改還是錯誤, 都可以通過提供的Keymap中的關(guān)鍵字來進(jìn)行重設(shè).
圖中gif如果看不清, 放大頁面即可.

原文地址

Android studio 奇巧淫工

<a name="1"/>

常用小操作

<a name="2"/>

單詞選擇

一般IDE通過option + 方向鍵左右(win為ctrl + 左右方向鍵)對光標(biāo)進(jìn)行單詞的跳動, 但是由于我們使用駝峰式命名較多, 默認(rèn)的會導(dǎo)致由多個單詞組成的駝峰式的首尾跳轉(zhuǎn). 還好AS可以對這種風(fēng)格進(jìn)行設(shè)定.

默認(rèn)效果

修改后的效果

修改步驟

打開偏好設(shè)置如圖片設(shè)置

注意: (感謝樓下朋友的留言钙蒙,指出這個問題)
如果你仍然希望當(dāng)鼠標(biāo)在單詞上雙擊之后選中整個單詞叭爱,需要作如下設(shè)置:

  • File | Settings 打開設(shè)置
  • 選擇 Editor | General
  • 取消選中 ‘Mouse’ | ‘Honor Camel Humps words settings when selecting on double click’

<a name="3"/>

顯示最近操作, 修改的文件

例如: 我打開了main_activity.xml布局文件, 然后關(guān)閉頁面. 這個時候Command + E, 就會如下顯示之前的操作文件.

那么如果要查看之前修改過的文件, Command + Shift + E即可. 可以配合Control + Tab進(jìn)行快速界面的切換.

快捷鍵

  • 最近操作
    • Command + E (mac)
    • ctrl + E (win)
  • 最近修改
    • Command + Shift + E (mac)
    • ctrl + shift + enter (win)

<a name="4"/>

文件查找

search Everywhere

項目中的全局查找功能文件功能

查找類文件

  • command + o (mac)
  • ctrl + n (win)

默認(rèn)只是在項目代碼中查找類文件, 如果需要查找sdk或者類庫中的相關(guān)類. 再按一次快捷鍵, 或者勾選下圖選項搜索全局類文件


查找文件

這個級別比上面那個更廣. 包括所有文件, 如xml等.

  • command + shift + o (mac)
  • ctrl + shift + n (win)

如上如果需要搜索類庫或者源碼, 請在按一次快捷鍵, 或者勾選查找類給出圖中的選項.

<a name="5"/>

操作記錄

在瀏覽代碼結(jié)構(gòu)的時候, 很多時候總是會跟進(jìn)許多類里面, 如果想回到之前瀏覽調(diào)轉(zhuǎn)點. 那么這個快捷鍵你就必須要記住.

  • Command + Option + Left\Right 或者 command + [, command + ] (mac)
  • ctrl + alt + Left\Right(win)

<a name="6"/>

移動行

這個不用太多介紹, 就是整行的上下移動.

  • Option + shift + 方向鍵上\方向鍵下 (mac)
  • alt + shift + 方向鍵上\方向鍵下 (win)

<a name="7"/>

查找方法調(diào)用處

場景: 查找一個方法在何處被調(diào)用, 或者一個ID在哪里被引用. 選中這個方法右鍵, 選擇Find Usages即可.

快捷鍵:

  • option + F7 (mac)
  • alt + F7 (win)

<a name="8"/>

方法的跟進(jìn)

方法總是伴隨著調(diào)轉(zhuǎn), 我們也總是會對方法的內(nèi)部查看細(xì)節(jié). 常用的辦法是按住Command 并點擊方法名的方式.

也可以在光標(biāo)所在處直接通過Command + B進(jìn)行方法內(nèi)部跟進(jìn).

  • Command + B (mac)
  • ctrl + alt + B (win)

<a name="9"/>

顯示方法的參數(shù)

當(dāng)我們使用一個方法的時候, 會在剛開始的時候顯示出所有的參數(shù). 但是過一會可能就不存在了. 這個時候如果你想知道下一個參數(shù)是什么類型, 或者看一下所有參數(shù).

快捷鍵:

  • command + P (mac)
  • ctrl + P (win)

如果你還想查看一下方法的文檔, 不用跟進(jìn)源碼, 直接F1鍵即可顯示出文檔.

<a name="10"/>

行的快速操作

快速刪除行, 其實使用剪切功能就可以Command + X

快速復(fù)制行, 使用command + Dmac, ctrl + Dwin

<a name="11"/>

多行操作

可能有時候我們會聲明做一系列相關(guān)的變量為float類型, 但是真實的需要的是int類型. 這個時候就可以進(jìn)行多重選擇進(jìn)行整體修改. 如下圖:

按住option(win為alt)鍵, 然后鼠標(biāo)進(jìn)行區(qū)域的選擇. 然后進(jìn)行對應(yīng)修改即可.

你可能認(rèn)為上面的必須要連續(xù)的才可以. 那么如果可以設(shè)置多個光標(biāo)點是否就可以滿足你的問題了?

看下圖:

  • option + shift + 鼠標(biāo)點擊 (mac)
  • alt + shift + 鼠標(biāo)點擊(win)

即可添加一個編輯光標(biāo). 最后如果不需要那么就esc即可關(guān)閉多余光標(biāo).

<a name="12"/>

快速補(bǔ)全完成

創(chuàng)建一個對象. 或者findViewById()有時總需要移動鼠標(biāo)或者光標(biāo)到末尾進(jìn)行分號的補(bǔ)全. 這些都可以快捷鍵搞定. 當(dāng)你用習(xí)慣之后, 會非常的方便好用.

  • command + shift + enter(mac)
  • ctrl + shift + enter(win)

實現(xiàn)的功能

  • 方法體大括號的添加
  • 行尾分號的添加
  • 自動格式化改行操作等

<a name="13"/>

代碼提示

任何地方都可以調(diào)出的代碼提示.

control + option + /(不是默認(rèn), mac默認(rèn)為control + space). 這里要說的是. 代碼提示之后一般都會回車鍵確定. 當(dāng)按回車鍵的時候. 會保留光標(biāo)之后的內(nèi)容. 當(dāng)有的時候我們并不需要. 這個時候你就可以使用table鍵進(jìn)行選擇. 它會將后面的輸入內(nèi)容刪掉.

win的快捷方式ctrl + 空格(win同樣大部分和輸入法沖突, 請手動在AS設(shè)置里面keymap項查找completion basic手動修改快捷鍵)

快速生成變量

比如在方法體中logi直接快速生成一個log日志輸出的模板, 但是TAG這個常量還沒有聲明. 這個時候用光標(biāo)移動到TAG上. 使用快捷鍵提示即可快速生成.

  • option + enter(mac)
  • alt + enter(win)

<a name="14"/>

變量的快速操作

上圖使用了兩次快捷鍵,

  • 第一次: 跳轉(zhuǎn)到變量的聲明處
    • command + B (mac)
    • ctrl + b (win)
  • 第二次: 跳轉(zhuǎn)到變量類型的定義處
    • command + shift + B (mac)
    • ctrl + shift + b (win)

<a name="15"/>

代碼折疊

對代碼塊進(jìn)行折疊和展開.

  • command + 加號\減號(mac)
  • ctrl + 加號\減號 (win)

<a name="16"/>

預(yù)覽方法定義

如果只想大體了解方法的定義, 而不需要進(jìn)行方法所在源碼類的跳轉(zhuǎn)顯示. 可以通過Command + Y (win快捷鍵為ctrl + shift + I)來進(jìn)行預(yù)覽

<a name="17"/>

粘貼板管理

對于復(fù)制粘貼. 我們習(xí)慣只是單次c+v, 那么如果你想查看之前被覆蓋了的復(fù)制過的內(nèi)容. AS同樣有復(fù)制粘貼板來管理. 展示最近幾次的復(fù)制內(nèi)容.

  • command + shift + v (mac)
  • ctrl + shift + v (win)

<a name="18"/>

拆分窗口

只需要在標(biāo)簽頁上右鍵. 選擇split vertical\horizontal.

<a name="19"/>

變量命名風(fēng)格

對于成員變量應(yīng)該m開頭. 對于靜態(tài)成員通常是s開頭. 可以這樣設(shè)置這個風(fēng)格.

這樣在輸入一個變量的名字時, 就可以自動補(bǔ)全m或者s. 同時在Extra代碼的時候, 生成的代碼都可以自動根據(jù)這個規(guī)則重構(gòu).

<a name="20"/>

查看大綱

當(dāng)一個類很大的時候. 可以通過command + F12(win為ctrl + F12) 打開大綱界面. 展示全部的方法和成員變量列表.

并且支持模糊搜索. 來進(jìn)行篩選顯示. 可以快速的找到要搜索的方法集.

<a name="21"/>

書簽

在瀏覽大型代碼, 或者調(diào)試時. 有時可能會需要記住一些關(guān)鍵的代碼或者方法. 這個時候就可以使用書簽. 來記錄此關(guān)鍵代碼. 只需要在點擊需要標(biāo)記的行, 并按F3就會在左側(cè)出現(xiàn)一個小對勾. 這就說明已經(jīng)打上了一個書簽.

同時在Favorites標(biāo)簽中, 也可以找到對應(yīng)的Bookmarks

可以通過快捷鍵command + F3 (win為shift + F11)快速調(diào)出書簽面板, 進(jìn)行后續(xù)的操作.

<a name="22"/>

快速重構(gòu)

<a name="23"/>

重構(gòu)入口

當(dāng)一個代碼片段準(zhǔn)備重構(gòu)的時候. 可以使用control + T (win為ctrl + alt + shift + T)打開重構(gòu)入口. 或者右鍵單擊選擇Refactor顯示重構(gòu)界面.

這里有很多方便的功能. 提成方法等等.

<a name="24"/>

surround With

當(dāng)對一個段代碼進(jìn)行, 條件包裹, 捕捉異常, 循環(huán), Runnable等. 可以直接使用快捷的方式, 而不需要手動生成條件在進(jìn)行代碼塊的復(fù)制-粘貼

快捷鍵

  • command + option + T(mac)
  • ctrl + alt + T(win)

<a name="25"/>

Extract

你可以經(jīng)常使用它,提取出一個方法.

不僅僅如此, 你還可以對xml中的多個控件相同的屬性進(jìn)行抽取為style

快捷鍵:

  • ctrl + alt + shift + T(win)

是不是很爽?

這是其一, 對于xml不僅可以抽取Style, 還可以抽取布局Layout

而代碼中, 可以提取各種變量, 參數(shù), 長廊.

<a name="26"/>

代碼模板

AS中已經(jīng)內(nèi)置了很多代碼模板, 你可以很嗖嗖嗖的就完成之前倒背如流的代碼. 如下一小部分

通過快捷鍵可調(diào)出這些代碼模板

  • command + J(mac)
  • ctrl + J(win)

<a name="27"/>

代碼分析

Google提供了很多代碼分析工具, 這些工具都集中在頂部菜單欄的Analyze中.

<a name="28"/>

Inspect Code & Code cleanup

Inspect Code可以讓IDE分析整個工程. 類似于Lint分析, 并會給出大致修改意見等

Code cleanup功能可以進(jìn)行自動的代碼修復(fù).

<a name="29"/>

Dependencies

通過Analyze中的幾個Dependencies選項. 可以快速分析項目的依賴.

<a name="30"/>

方法調(diào)用棧

對于某些方法來說, 查看它被調(diào)用的地方和調(diào)用的順序是非常重要的. 可通過control + option + H快速查找方法調(diào)用棧.

<a name="31"/>

斷點調(diào)試

<a name="32"/>

快速斷點

條件斷點. 主要用在循環(huán)體內(nèi). 一個循環(huán)10次的for. 只想在第8次進(jìn)入斷點.

普通斷點相似, 一樣先聲明一個斷點. 然后在普通斷點單擊鼠標(biāo)右鍵. 在彈出的菜單填寫斷點條件即可. 如下:

上面圖中Enable可以控制啟用, 還是停用一個斷點.


臨時斷點. 如果需要一個只執(zhí)行一次的斷點. 執(zhí)行完之后斷點自動取消. 那么可以通過快捷點將當(dāng)前行作為臨時斷點.

  • command + option + shift + F8
  • ctrl + alt + shift + F8

為了篇幅不是很長, 調(diào)試的部分貼一個講解很詳細(xì)的帖子

<a name="33"/>

快捷鍵查找表

速查表列出了keymap快捷鍵的名稱. 可以直接通過AS setting界面搜索keymap. 通過對應(yīng)的快捷鍵名稱來添加或者修改快捷鍵.

功能描述 keymap對應(yīng)名字 Mac Win/Linux
提示錯誤解決方案 Show Intention Actions option + enter alt + enter
AS配置界面 Preferences command + , control+alt+S
工程項目配置界面 Project Structure command + ; Control+Alt+Shift+S
快速構(gòu)成代碼 Code Generate command + N alt + insert
代碼提示 Completion/Basic control + space(mac會沖突, 手動修改) ctrl + 空格(win同樣大部分和輸入法沖突, 手動修改)
選擇視圖 select in any view option + F1 alt + F1
添加書簽標(biāo)識 Toggle Bookmark option + F3 ctrl + F11
向下移動一行 Move Line Down option + shift + Down alt + shift + Down
向上移動一行 Move Line Up option + shift + Up alt + shift + Up
注釋代碼 Comment with Line Comment command + / ctrl + /
用代碼模板包裹代碼 surround with Live Template command + option + J ctrl + alt + J
格式化代碼 Reformat Code command + option + L ctrl + alt + L
Copy Reference Copy Reference command + option + shift + C ctrl + alt + shift + C
if/try等包裹代碼 Surround With.. command + option + T ctrl + alt + T
查看聲明 Declaration command + B ctrl + B
快捷向下復(fù)制行 Duplicate Line or Block command + D ctrl + D
刪除行 Delete Line command + delete ctrl + Y
快捷最近打開 Recent Files command + E ctrl + E
查找 Edit/Find/Find command + F ctrl + F
文件方法結(jié)構(gòu) File Structure command + F12 ctrl + F12
顯示書簽 Show Bookmarks command + F3 shift + F11
代碼高亮向下查找 Move To Next Occurrence command + G F3
代碼高亮向上查找 Move To Previous Occurrence command + shift + G shift + F3
按照模板生成代碼 Insert Live Template command + J ctrl + J
定位到行 Navigate/Line command + L ctrl + G
快速到行首/尾 Move Caret to Line Start/End command + Left/Right ctrl + Left/Right
代碼折疊/展開 Collapse/Expand command + 減號/加號 ctrl + 減號/加號
查找類 Navigate/Class command + O ctrl + N
多行注釋 **Code/Comment ** command + option + / ctrl + alt + /
格式化代碼 Reformat Code command + option + L ctrl + alt + L
提示參數(shù)類型 Parameter Info command + P ctrl + P
查找替換 Replace command + R ctrl + R
查找命令 Find Action command + shift + A ctrl + shift + A
拷貝文件路徑 Copy Paths command + shift + C ctrl + shift + C
移動代碼塊 Move Statement Up/Down command + shift + down/up ctrl + shift + down/up
代碼補(bǔ)全 Complete Current Statement command + shift + enter ctrl + shift + enter
全路徑查找 Find in Path command + shift + F ctrl + shift + F
代碼高亮 Highlight Usages in File command + shift + F7 alt + J
窗口內(nèi)所有代碼折疊/展開 Collapse/Expand All command + shift + 減號/加號 ctrl + shift + 減號/加號
查找文件 Navigate/File command + shift + O ctrl + shift + N
全路徑中替換 Replace in Path command + shift + R ctrl + shift + R
大小寫轉(zhuǎn)換 Toggle Case command + shift + U ctrl + shift + U
顯示粘貼版歷史 Paste from History command + shift + V ctrl + shift + V
快速查找定義 command + space ctrl + shift + I
粘貼 Paste command + V ctrl + V
復(fù)制 Copy command + C ctrl + C
去除無效包引用 Optimize Imports control + option + O ctrl + alt + O
顯示類關(guān)系繼承體系 Type Hierarchy control + H ctrl + H
快速覆寫方法 override Methods control + O ctrl + O
查找調(diào)用的位置 Call hierarchy control + option + H ctrl + alt + H
添加書簽 Toggle Bookmark F3 F11
擴(kuò)大縮小選中范圍 Extend Selection/Shrink Selection option + UP/Down ctrl + W + shift + W
跳轉(zhuǎn)到父類 Super method command + U ctrl + U
關(guān)閉當(dāng)前tab標(biāo)簽 Editor Tabs / Close command + W ctrl + shift + a
關(guān)閉除編輯窗口的其余窗口 Hide All Tool Windows command + shift + F12 ctrl + shift + F12
預(yù)覽方法定義 Quick Definition command + Y ctrl + shift + I
返回光標(biāo)最后編輯位置 Last Edit Location command + shift + delete control + shift + Backspace
調(diào)到代碼塊首部/尾部 Move Caret To Code Block Option + Command + [ 或者 ] Control+[ 或者 ]
重命名 Rename shift + F6 shift + F6
抽取方法 Extract Method command + option + M control+alt+M
抽取變量 Extract Variable command + option + V control+alt+V
抽取字段 Extract Field command + option + F control+alt+F
抽取常量 Extract Constant command + option + C control+alt+C
抽取參數(shù) Extract Parameter command + option + P control+alt+P
重構(gòu)入口 Refactor This control + T ctrl + alt + shift + T

推薦閱讀:
《Android 一共有多少種動畫撞叨?準(zhǔn)確告訴你!》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末愿吹,一起剝皮案震驚了整個濱河市不从,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌犁跪,老刑警劉巖椿息,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異坷衍,居然都是意外死亡寝优,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門枫耳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來乏矾,“玉大人,你說我怎么就攤上這事∽晷模” “怎么了凄硼?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長捷沸。 經(jīng)常有香客問我摊沉,道長,這世上最難降的妖魔是什么痒给? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任说墨,我火速辦了婚禮,結(jié)果婚禮上侈玄,老公的妹妹穿的比我還像新娘婉刀。我一直安慰自己吟温,他們只是感情好序仙,可當(dāng)我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著鲁豪,像睡著了一般潘悼。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上爬橡,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天治唤,我揣著相機(jī)與錄音,去河邊找鬼糙申。 笑死宾添,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的柜裸。 我是一名探鬼主播缕陕,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼疙挺!你這毒婦竟也來了扛邑?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤铐然,失蹤者是張志新(化名)和其女友劉穎蔬崩,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體搀暑,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡沥阳,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了自点。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片桐罕。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出冈绊,到底是詐尸還是另有隱情侠鳄,我是刑警寧澤,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布死宣,位于F島的核電站伟恶,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏毅该。R本人自食惡果不足惜博秫,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望眶掌。 院中可真熱鬧挡育,春花似錦、人聲如沸朴爬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽召噩。三九已至母赵,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間具滴,已是汗流浹背凹嘲。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留构韵,地道東北人周蹭。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像疲恢,于是被迫代替她去往敵國和親凶朗。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,577評論 2 353

推薦閱讀更多精彩內(nèi)容