本系列文章是我一位粉絲「寫代碼的猴子」翻譯自Android Studio Tips by Philippe Breault,一共收集了62個 Android Studio 使用小技巧和快捷鍵。 根據(jù)這些小技巧的使用場景,本文將這62個小技巧分為常用技巧、編碼技巧和調(diào)試技巧三個系列,堪稱史上最詳細(xì),已獲授權(quán)發(fā)布,可閱讀原文跳轉(zhuǎn)到原博客。
1. 書簽(Bookmarks)
描述:這是一個很有用的功能,讓你可以在某處做個標(biāo)記(書簽),方便后面再跳轉(zhuǎn)到此處。
調(diào)用:Menu → Navigate → Bookmarks
快捷鍵:
添加/移除書簽:F3(OS X) 、F11(Windows/Linux);
添加/移除書簽(帶標(biāo)記):Alt + F3(OS X)、Ctrl + F11(Windows/Linux);
顯示全部書簽:Cmd + F3(OS X) 、Shift + F11(Windows/Linux),顯示所有的書簽列表,并且是可以搜索的。
上一個/下一個書簽:無,可以在設(shè)置中設(shè)置快捷鍵。
更多:當(dāng)你為某個書簽指定了標(biāo)記,你可以使用快捷鍵 Ctrl + 標(biāo)記 來快速跳轉(zhuǎn)到標(biāo)記處,比如輸入Ctrl + 1,跳到標(biāo)記為1的書簽處。
2. 折疊/展開代碼塊(Collapse Expand Code Block)
描述:該操作提供一種方法,讓你隱藏你不關(guān)心的部分代碼,以一種較為簡潔的格式顯示關(guān)鍵代碼。一個有意思的用法是隱藏匿名內(nèi)部類的代碼,讓其看起來像一個Lambda表達(dá)式。
快捷鍵:Cmd + “+”/”-“(OS X)、Ctrl + Shift + “+”/”-“(Windows/Linux);
更多:可以在Settig → Editor → General → Code Folding 中設(shè)置折疊規(guī)則。
3. 與分支比對(Compare With Branch (Git))
描述:假如你的項目是使用git來管理的,你可以將當(dāng)前文件或者文件夾與其他的分支進(jìn)行比對。比較有用的是可以讓你了解到你與主分支有多少差別。
調(diào)用:Menu → VCS → Git → Compare With Branch
4. 與剪切板比對(Compare With Clipboard)
描述:將當(dāng)前選中的部分與剪切板上的內(nèi)容進(jìn)行比對。
調(diào)用:右鍵選中的部分,在右鍵菜單中選擇“Compare With Clipboard”。
5. 上下文信息(Context Info)
描述:當(dāng)前作用域定義超過滾動區(qū)域,執(zhí)行該操作將顯示所在的上下文信息,通常它顯示的是類名或者內(nèi)部類類名或者當(dāng)前所在的方法名。該操作在xml文件中同樣適用。
調(diào)用:Menu → View → Context Info
快捷鍵:Alt + Q (Windows/Linux)
更多:個人認(rèn)為,這個功能更好的用法是快速查看當(dāng)前類繼承的父類或者實現(xiàn)的接口。
6. 查找操作(Find Action)
描述:輸入某個操作的名稱,快速查找,對于沒有快捷鍵的部分操作這是一個很有用的技巧。
快捷鍵:Cmd +Shift + A(OS X)、Ctrl + Shift + A(Windows/Linux);
更多:當(dāng)某個操作是有快捷鍵的,會顯示在旁邊。
7. 查找補全(Find Complection)
描述:當(dāng)你在一個文件中進(jìn)行查找時,使用自動補全快捷鍵可以給出在當(dāng)前文件中出現(xiàn)的建議單詞;
快捷鍵:Cmd + F(OS X),Ctrl + F(Windows/Linux),輸入一些字符,然后使用自動補全;
8. 隱藏所有面板(Hide All Panels)
描述:切換編輯器鋪滿整個程序界面,隱藏其他的面板。再次執(zhí)行該操作,將會回到隱藏前的狀態(tài)。
調(diào)用:Menu → Window → Active Tool Window → Hide All Windows;
快捷鍵:Cmd +Shift + F12(OS X)、Ctrl + Shift + F12(Windows/Linux);
9. 高亮一切(Hightlight All the Things)
描述:該操作將會高亮某個字符在當(dāng)前文件中所有出現(xiàn)的地方。這不僅僅是簡單的匹配,實際上它會分析當(dāng)前的作用域,只高亮相關(guān)的部分。
調(diào)用:Menu → Edit → Find → Highlight Usages in File;
定位到上一處/下一處:Menu → Edit → Find → Find Next/Previous;
快捷鍵:相關(guān)快捷鍵請在菜單中查看;
更多:
如果高亮一個方法的return或throw語句,將會高亮這個方法的所有出口/結(jié)束點;
如果高亮某個類定義處的extend或implements語句,將會高亮繼承的或?qū)崿F(xiàn)的方法;
高亮一個import語句也會高亮使用到的地方;
按下Esc可以退出高亮模式;
10. 回到上一個工具窗口(Jump to Last Tool Window)
描述:有時候你會從某個工具窗口跳到編輯器里面,然后又需要重新回到剛才操作的那個工具窗,比如你查找使用情況的時,使用該操作可以在不使用鼠標(biāo)的情況下跳轉(zhuǎn)到之前的工具窗口。
快捷鍵:F12;
11. 上一個編輯位置(Last Edit Location)
描述:該操作將使得你導(dǎo)航到上一處你改動過的地方,這與點擊工具欄上的返回箭頭回到上一個定位位置是不一樣的,該操作將會返回到上一個編輯的位置。
快捷鍵:Cmd + Shift + Delete(OS X)、Ctrl + Shift + Backspace(Windows/Linux);
12. 在方法和內(nèi)部類之間跳轉(zhuǎn)(Move Between Methods and Inner Classes)
描述:該操作讓光標(biāo)在當(dāng)前文件的方法或內(nèi)部類的名字間跳轉(zhuǎn)。
調(diào)用:Navigate → Next Method/Previous Method;
快捷鍵:Ctrl + Up/Down(OS X)、Alt + Up/Down(Windows/Linux);
13. 定位到嵌套文件(Navigate to Nested File)
描述:有時你有一堆存放在不同目錄下的同名文件,例如不同模塊下的AndroidManifest.xml文件,當(dāng)你想定位到其中的一個文件,你會得到一堆搜索結(jié)果,你還得辨認(rèn)哪個才是你需要的。通過在檢索框中輸入部分路徑的前綴,并添加斜杠號,你就可以在第一次嘗試的時候就找到正確的那個。
快捷鍵:Cmd + O(OS X)、Ctrl + N(Windows/Linux);
14. 定位到父類(Navigate to parent)
描述:如果光標(biāo)是在一個繼承父類重寫的方法里,這個操作將定位到父類實現(xiàn)的地方。如果光標(biāo)是在類名上,則定位到父類類名。
Menu → Navigate → Super Class/Method
快捷鍵:Cmd + U(OS X)、Ctrl + U(Windows/Linux);
15. 根據(jù)編號打開面板(Open a Panel by Its Number)
描述:你可能已經(jīng)注意到某些面板的名稱左邊有一個數(shù)字,這里有個快捷操作可以打開它們。如果你沒看到面板的名稱,請點擊IDE的左下角的切換按鈕。
快捷鍵:Cmd + 數(shù)字(OS X)、Alt + 數(shù)字(Windows/Linux);
16. 在外部打開文件(Open File Externally)
描述:通過這個快捷鍵,簡單地點擊Tab,就可以打開當(dāng)前文件所在的位置或者該文件的任意上層路徑。
快捷鍵:Cmd + 單擊Tab(OS X)、Ctrl + 點擊Tab(Windows/Linux);
17. 參數(shù)信息(Parameter Info)
描述:這個操作將顯示和你在方法聲明處寫一樣的參數(shù)列表,當(dāng)你想看某個存在的方法的參數(shù),這是一個很有用的操作。光標(biāo)下的參數(shù)顯示為黃色,如果沒有參數(shù)顯示黃色,意味著你的方法調(diào)用是無效的,很可能是某個參數(shù)分配不對。(例如一個浮點數(shù)賦值給了整型參數(shù))。如果你正在寫一個方法調(diào)用,突然離開編輯的地方,再返回的時候,輸入一個逗號,就可以重新觸發(fā)參數(shù)信息。
快捷鍵:Cmd + P(OS X)、Ctrl + U(Windows/Linux);
18. 快速查看定義(Quick Definition Lookup)
描述:你曾經(jīng)是否想查看一個方法或者類的具體實現(xiàn),但是不想離開當(dāng)前界面? 該操作可以幫你搞定。
快捷鍵:Alt + Space / Cmd + Y(OS X)、Ctrl + Shift + I(Windows/Linux)
19. 最近修改的文件(Recently Changed Files)
描述:該操作類似于“最近訪問(Recents)”彈窗,會顯示最近本地修改過的文件列表,根據(jù)修改時間排列??梢暂斎胱址麃磉^濾列表結(jié)果。
快捷鍵:Cmd + Shift + E(OS X)、Ctrl + Shift + E(Windows/Linux)
20. 最近訪問(Recents)
描述:該操作可以得到一個最近訪問文件的可搜索的列表。
快捷鍵:Cmd + E(OS X)、Ctrl + E(Windows/Linux)
21. 相關(guān)文件(Related File)
描述:該操作有助于在布局文件和Activity/Fragment之間輕松跳轉(zhuǎn)。這也是一個快捷操作,在類名/布局頂端的左側(cè)。
快捷鍵:Ctrl + Cmd + Up(OS X)、Ctrl + Alt + Home(Windows/Linux)
22. 返回到編輯器(Return to the Editor)
描述:一大堆快捷鍵操作會把你從編輯器帶走(type hierarchy, find usages, 等等)。如果你想返回到編輯器,你有兩個選項:
Esc:該操作僅僅把光標(biāo)移回編輯器。
Shift + Esc:該操作會關(guān)閉當(dāng)前面板,然后把光標(biāo)移回到編輯器。
快捷鍵:
返回但保留打開的面板:Esc
關(guān)閉面板并返回:Shift + Esc
23. Select In
描述:拿著當(dāng)前文件然后問你在哪里選中該文件。恕我直言,最有用的就是在項目結(jié)構(gòu)或者資源管理器中打開該文件。每一個操作都有數(shù)字或者字母作為前綴,可以通過這個前綴來快速跳轉(zhuǎn)。通常,我會 Alt + F1 然后 回車(Enter) 來打開項目視圖,然后 再用 Alt + F1 在OS X的Finder里找到文件。你可以在文件中或者直接在項目視圖里使用該操作。
快捷鍵:Alt + F1;
24. 擴(kuò)大選擇(Shrink Selection)
描述:該操作會在上下文逐漸擴(kuò)大當(dāng)前選擇范圍。例如,它會先選中當(dāng)前變量,再選中當(dāng)前語句,然后選中整個方法,等等。
快捷鍵:Cmd + F2(OS X)、Ctrl + F2(Windows、Linux)
25. Sublime Text式的多處選擇(Sublime Text Multi Selection)
描述:這個功能超級贊!該操作會識別當(dāng)前選中字符串,選擇下一個同樣的字符串,并且添加一個光標(biāo)。這意味著你可以在同一個文件里擁有多個光標(biāo),你可以同時在所有光標(biāo)處輸入任何東西。
快捷鍵:Ctrl + G(OS X)、Alt + J(Windows、Linux)
26. 文件結(jié)構(gòu)彈窗(The File Structure Popup)
描述:該操作可以展示當(dāng)前類的大綱,并且可以快速跳轉(zhuǎn)。你還可以通過鍵盤輸入來過濾結(jié)果。這是一種很高效的方法來跳轉(zhuǎn)到指定方法。
更多:
你在輸入字符的時候可以用駝峰風(fēng)格來過濾選項。比如輸入”oCr”會找到”onCreate”
你可以通過勾選多選框來決定是否顯示匿名類。這在某些情況下很有用,比如你想直接跳轉(zhuǎn)到一個OnClickListener的onClick方法。
快捷鍵:Cmd + F12(OS X)、Ctrl + F12(Windows/Linux)
調(diào)用:Menu → Navigate → File Structure
27. 切換器(The Switcher)
描述:該快捷鍵基本上就是IDE的alt+tab/cmd+tab命令。你可以用它在導(dǎo)航tab或者面板切換。一旦打開這個窗口,只要一直按著ctrl鍵,你可以通過對應(yīng)的數(shù)字或者字母快捷鍵快速選擇。你也可以通過backspace鍵來關(guān)閉一個已選中的tab或者面板。
快捷鍵:Ctrl + Tab
28. 版本控制操作彈窗(VCS Operations Popup)
描述:該操作會給你顯示最常用的版本控制操作。如果你的項目沒有用git等版本控制軟件進(jìn)行管理,它至少會給你提供一個由IDE維護(hù)的本地歷史記錄。
快捷鍵:Ctrl + V(OS X)、Alt + `(Windows/Linux)