熟練這些,才會知道 Android studio 有多高效
Android Studio 常用高效快捷鍵
整理 Android群英傳 和網上出現的比較完整 AS 的快捷小技巧. mac 版已測, win 大部分已測試. 最后有一個整理的完整 快捷鍵表格 . win也好mac也好, 如果快捷被修改還是錯誤, 都可以通過提供的 Keymap中的關鍵字 來進行重設.
Android studio 奇巧淫工
常用小操作
單詞選擇
一般 IDE 通過 option + 方向鍵左右 (win為 ctrl + 左右方向鍵 )對光標進行單詞的跳動, 但是由于我們使用駝峰式命名較多, 默認的會導致由多個單詞組成的駝峰式的首尾跳轉. 還好 AS 可以對這種風格進行設定.
默認效果
修改后的效果
修改步驟
打開 偏好設置 如圖片設置
顯示最近操作, 修改的文件
例如: 我打開了 main_activity.xml 布局文件, 然后關閉頁面. 這個時候 Command + E , 就會如下顯示之前的操作文件.
那么如果要查看之前修改過的文件, Command + Shift + E 即可. 可以配合 Control + Tab 進行快速界面的切換.
快捷鍵
- 最近操作
- Command + E (mac)
- ctrl + E (win)
- 最近修改
- Command + Shift + E (mac)
- ctrl + shift + enter (win) </ul> </li> </ul>
- command + o (mac)
- ctrl + n (win)
- command + shift + o (mac)
- ctrl + shift + n (win)
- Command + Option + Left\Right 或者 command + [ , command + ] (mac)
- ctrl + alt + Left\Right (win)
- Option + shift + 方向鍵上\方向鍵下 (mac)
- alt + shift + 方向鍵上\方向鍵下 (win)
- option + F7 (mac)
- alt + F7 (win)
- Command + B (mac)
- ctrl + alt + B (win)
- command + P (mac)
- ctrl + P (win)
- option + shift + 鼠標點擊 (mac)
- alt + shift + 鼠標點擊 (win)
- command + shift + enter (mac)
- ctrl + shift + enter (win)
- 方法體大括號的添加
- 行尾分號的添加
- 自動格式化改行操作等
- option + enter (mac)
- alt + enter (win)
- 第一次: 跳轉到變量的 聲明處
- command + B (mac)
- ctrl + b (win)
- 第二次: 跳轉到變量類型的 定義處
- command + shift + B (mac)
- ctrl + shift + b (win) </ul> </li> </ul>
- command + 加號\減號 (mac)
- ctrl + 加號\減號 (win)
- command + shift + v (mac)
- ctrl + shift + v (win)
- command + option + T (mac)
- ctrl + alt + T (win)
- ctrl + alt + shift + T (win)
- command + J (mac)
- ctrl + J (win)
- command + option + shift + F8
- ctrl + alt + shift + F8
代碼折疊
對代碼塊進行折疊和展開.
預覽方法定義
如果只想大體了解方法的定義, 而不需要進行方法所在源碼類的跳轉顯示. 可以通過 Command + Y (win快捷鍵為 ctrl + shift + I )來進行預覽
粘貼板管理
對于復制粘貼. 我們習慣只是 單次 的 c+v , 那么如果你想查看之前被覆蓋了的 復制過的 內容. AS 同樣有 復制粘貼板 來管理. 展示最近幾次的復制內容.
拆分窗口
只需要在標簽頁上 右鍵 . 選擇 split vertical\horizontal .
變量命名風格
對于 成員變量 應該 m 開頭. 對于 靜態成員 通常是 s 開頭. 可以這樣設置這個風格.
這樣在輸入一個變量的名字時, 就可以自動補全 m 或者 s . 同時在 Extra 代碼的時候, 生成的代碼都可以自動根據這個規則重構.
查看大綱
當一個類很大的時候. 可以通過 command + F12 (win為 ctrl + F12 ) 打開大綱界面. 展示全部的方法和成員變量列表.
并且支持模糊搜索. 來進行篩選顯示. 可以快速的找到要搜索的方法集.
書簽
在瀏覽大型代碼, 或者調試時. 有時可能會需要記住一些關鍵的代碼或者方法. 這個時候就可以使用 書簽 . 來記錄此關鍵代碼. 只需要在點擊需要標記的行, 并按 F3 就會在左側出現一個 小對勾 . 這就說明已經打上了一個書簽.
同時在 Favorites 標簽中, 也可以找到對應的 Bookmarks
可以通過快捷鍵 command + F3 (win為 shift + F11 )快速調出書簽面板, 進行后續的操作.
快速重構
重構入口
當一個代碼片段準備重構的時候. 可以使用 control + T (win為 ctrl + alt + shift + T )打開重構入口. 或者 右鍵單擊 選擇 Refactor 顯示重構界面.
這里有很多方便的功能. 提成方法等等.
surround With
當對一個段代碼進行, 條件包裹, 捕捉異常, 循環, Runnable等. 可以直接使用快捷的方式, 而不需要手動生成條件在進行代碼塊的 復制-粘貼
快捷鍵
Extract
你可以經常使用它,提取出一個方法.
不僅僅如此, 你還可以對 xml 中的多個控件相同的屬性進行抽取為 style
快捷鍵:
是不是很爽?
這是其一, 對于 xml 不僅可以抽取 Style , 還可以抽取布局 Layout
而代碼中, 可以提取各種變量, 參數, 長廊.
代碼模板
AS 中已經內置了很多代碼模板, 你可以很嗖嗖嗖的就完成之前倒背如流的代碼. 如下一小部分
通過快捷鍵可調出這些代碼模板
代碼分析
Google 提供了很多代碼分析工具, 這些工具都集中在頂部菜單欄的 Analyze 中.
Inspect Code & Code cleanup
Inspect Code 可以讓 IDE 分析整個工程. 類似于 Lint 分析, 并會給出大致修改意見等
Code cleanup 功能可以進行自動的代碼修復.
Dependencies
通過 Analyze 中的幾個 Dependencies 選項. 可以快速分析項目的依賴.
方法調用棧
對于某些方法來說, 查看它被調用的地方和調用的順序是非常重要的. 可通過 control + option + H 快速查找方法調用棧.
斷點調試
快速斷點
條件斷點 . 主要用在循環體內. 一個循環10次的 for . 只想在第 8 次進入斷點.
和 普通斷點 相似, 一樣先聲明一個斷點. 然后在 普通斷點 上 單擊鼠標右鍵 . 在彈出的菜單填寫斷點條件即可. 如下:
上面圖中 Enable 可以控制 啟用 , 還是 停用 一個斷點.
臨時斷點 . 如果需要一個只執行一次的斷點. 執行完之后斷點自動取消. 那么可以通過快捷點將當前行作為臨時斷點.
為了篇幅不是很長, 調試的部分貼一個講解很詳細的帖子
快捷鍵查找表
速查表列出了 keymap 快捷鍵的名稱. 可以直接通過 AS setting 界面搜索 keymap . 通過對應的快捷鍵名稱來添加或者修改快捷鍵.
功能描述 keymap對應名字 Mac Win/Linux 提示錯誤解決方案 Show Intention Actions option + enter alt + enter AS配置界面 Preferences command + , control+alt+S 工程項目配置界面 Project Structure command + ; Control+Alt+Shift+S 快速構成代碼 Code Generate command + N alt + insert 代碼提示 Completion/Basic control + space (mac會沖突, 手動修改) ctrl + 空格 (win同樣大部分和輸入法沖突, 手動修改) 選擇視圖 select in any view option + F1 alt + F1 添加書簽標識 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 快捷向下復制行 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 文件方法結構 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 提示參數類型 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 代碼補全 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 窗口內所有代碼折疊/展開 Collapse/Expand All command + shift + 減號/加號 ctrl + shift + 減號/加號 查找文件 Navigate/File command + shift + O ctrl + shift + N 全路徑中替換 Replace in Path command + shift + R ctrl + shift + R 大小寫轉換 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 復制 Copy command + C ctrl + C 去除無效包引用 Optimize Imports control + option + O ctrl + alt + O 顯示類關系繼承體系 Type Hierarchy control + H ctrl + H 快速覆寫方法 override Methods control + O ctrl + O 查找調用的位置 Call hierarchy control + option + H ctrl + alt + H 添加書簽 Toggle Bookmark F3 F11 擴大縮小選中范圍 Extend Selection/Shrink Selection option + UP/Down ctrl + W + shift + W 跳轉到父類 Super method command + U ctrl + U 關閉當前tab標簽 Editor Tabs / Close command + W ctrl + shift + a 關閉除編輯窗口的其余窗口 Hide All Tool Windows command + shift + F12 ctrl + shift + F12 預覽方法定義 Quick Definition command + Y ctrl + shift + I 返回光標最后編輯位置 Last Edit Location command + shift + delete control + shift + Backspace 調到代碼塊首部/尾部 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 抽取參數 Extract Parameter command + option + P control+alt+P 重構入口 Refactor This control + T ctrl + alt + shift + T 來自:http://www.jianshu.com/p/a1527d4c85a7
文件查找
search Everywhere
項目中的全局查找功能文件功能
查找類文件
默認只是在項目代碼中查找類文件, 如果需要查找 sdk 或者類庫中的相關類. 再按一次快捷鍵, 或者勾選下圖選項搜索全局類文件
查找文件
這個級別比上面那個更廣. 包括所有文件, 如 xml 等.
如上如果需要搜索類庫或者源碼, 請在按一次快捷鍵, 或者勾選 查找類 給出圖中的選項.
操作記錄
在瀏覽代碼結構的時候, 很多時候總是會跟進許多類里面, 如果想回到之前瀏覽調轉點. 那么這個快捷鍵你就必須要記住.
移動行
這個不用太多介紹, 就是 整行 的上下移動.
查找方法調用處
場景: 查找一個方法在何處被調用, 或者一個ID在哪里被引用. 選中這個方法 右鍵 , 選擇 Find Usages 即可.
快捷鍵:
方法的跟進
方法總是伴隨著調轉, 我們也總是會對方法的內部查看細節. 常用的辦法是 按住Command 并點擊方法名 的方式.
也可以在光標所在處直接通過 Command + B 進行方法內部跟進.
顯示方法的參數
當我們使用一個方法的時候, 會在剛開始的時候顯示出所有的參數. 但是過一會可能就不存在了. 這個時候如果你想知道下一個參數是什么類型, 或者看一下所有參數.
快捷鍵:
如果你還想查看一下方法的文檔, 不用跟進源碼, 直接 F1 鍵即可顯示出文檔.
行的快速操作
快速刪除行, 其實使用剪切功能就可以 Command + X
快速復制行, 使用 command + D mac , ctrl + D win
多行操作
可能有時候我們會聲明做一系列相關的變量為 float 類型, 但是真實的需要的是 int 類型. 這個時候就可以進行 多重選擇 進行整體修改. 如下圖:
按住 option (win為 alt )鍵, 然后鼠標進行區域的選擇. 然后進行對應修改即可.
你可能認為上面的必須要連續的才可以. 那么如果可以設置 多個光標點 是否就可以滿足你的問題了?
看下圖:
即可添加一個 編輯光標 . 最后如果不需要那么就 esc 即可關閉多余光標.
快速補全完成
創建一個對象. 或者 findViewById() 有時總需要移動鼠標或者光標到末尾進行 分號 的補全. 這些都可以快捷鍵搞定. 當你用習慣之后, 會非常的方便好用.
實現的功能
代碼提示
任何地方都可以調出的代碼提示.
control + option + / (不是默認, mac默認為 control + space ). 這里要說的是. 代碼提示之后一般都會 回車鍵 確定. 當按 回車鍵 的時候. 會保留光標之后的內容. 當有的時候我們并不需要. 這個時候你就可以使用 table 鍵進行選擇. 它會將后面的輸入內容刪掉.
win的快捷方式 ctrl + 空格 (win同樣大部分和輸入法沖突, 請手動在AS設置里面 keymap 項查找 completion basic 手動修改快捷鍵)
快速生成變量
比如在方法體中 logi 直接快速生成一個 log 日志輸出的模板, 但是 TAG 這個常量還沒有聲明. 這個時候用光標移動到 TAG 上. 使用快捷鍵提示即可快速生成.
變量的快速操作
上圖使用了兩次快捷鍵,