1. 程式人生 > >熟練這些,才會知道 Android studio 有多高效

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

Android Studio 常用高效快捷鍵

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

原文地址


Android studio 奇巧淫工

常用小操作

單詞選擇

一般IDE通過option + 方向鍵左右(win為ctrl + 左右方向鍵)對游標進行單詞的跳動, 但是由於我們使用駝峰式命名較多, 預設的會導致由多個單片語成的駝峰式的首尾跳轉. 還好AS

可以對這種風格進行設定.

預設效果


修改後的效果


修改步驟

開啟偏好設定如圖片設定


注意: (感謝樓下朋友的留言,指出這個問題)
如果你仍然希望當滑鼠在單詞上雙擊之後選中整個單詞,需要作如下設定:

  • File | Settings 開啟設定
  • 選擇 Editor | General
  • 取消選中 ‘Mouse’ | ‘Honor Camel Humps words settings when selecting on double click’

顯示最近操作, 修改的檔案

例如: 我打開了main_activity.xml

佈局檔案, 然後關閉頁面. 這個時候Command + E, 就會如下顯示之前的操作檔案.


那麼如果要檢視之前修改過的檔案, Command + Shift + E即可. 可以配合Control + Tab進行快速介面的切換.

快捷鍵

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

檔案查詢

search Everywhere

專案中的全域性查詢功能檔案功能

查詢類檔案

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

預設只是在專案程式碼中查詢類檔案, 如果需要查詢sdk或者類庫中的相關類. 再按一次快捷鍵, 或者勾選下圖選項搜尋全域性類檔案


查詢檔案

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

  • 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)

查詢方法呼叫處

場景: 查詢一個方法在何處被呼叫, 或者一個ID在哪裡被引用. 選中這個方法右鍵, 選擇Find Usages即可.

快捷鍵:

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

方法的跟進

方法總是伴隨著調轉, 我們也總是會對方法的內部檢視細節. 常用的辦法是按住Command 並點選方法名的方式.

也可以在游標所在處直接通過Command + B進行方法內部跟進.

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

顯示方法的引數

當我們使用一個方法的時候, 會在剛開始的時候顯示出所有的引數. 但是過一會可能就不存在了. 這個時候如果你想知道下一個引數是什麼型別, 或者看一下所有引數.


快捷鍵:

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

如果你還想檢視一下方法的文件, 不用跟進原始碼, 直接F1鍵即可顯示出文件.

行的快速操作

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

快速複製行, 使用command + Dmacctrl + Dwin

多行操作

可能有時候我們會宣告做一系列相關的變數為float型別, 但是真實的需要的是int型別. 這個時候就可以進行多重選擇進行整體修改. 如下圖:


按住option(win為alt)鍵, 然後滑鼠進行區域的選擇. 然後進行對應修改即可.

你可能認為上面的必須要連續的才可以. 那麼如果可以設定多個游標點是否就可以滿足你的問題了?

看下圖:


  • option + shift + 滑鼠點選 (mac)
  • alt + shift + 滑鼠點選(win)

即可新增一個編輯游標. 最後如果不需要那麼就esc即可關閉多餘游標.

快速補全完成

建立一個物件. 或者findViewById()有時總需要移動滑鼠或者游標到末尾進行分號的補全. 這些都可以快捷鍵搞定. 當你用習慣之後, 會非常的方便好用.

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

實現的功能

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

程式碼提示

任何地方都可以調出的程式碼提示.

control + option + /(不是預設, mac預設為control + space). 這裡要說的是. 程式碼提示之後一般都會回車鍵確定. 當按回車鍵的時候. 會保留游標之後的內容. 當有的時候我們並不需要. 這個時候你就可以使用table鍵進行選擇. 它會將後面的輸入內容刪掉.

win的快捷方式ctrl + 空格(win同樣大部分和輸入法衝突, 請手動在AS設定裡面keymap項查詢completion basic手動修改快捷鍵)


快速生成變數

比如在方法體中logi直接快速生成一個log日誌輸出的模板, 但是TAG這個常量還沒有宣告. 這個時候用游標移動到TAG上. 使用快捷鍵提示即可快速生成.

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

變數的快速操作


上圖使用了兩次快捷鍵,

  • 第一次: 跳轉到變數的宣告處
    • command + B (mac)
    • ctrl + b (win)
  • 第二次: 跳轉到變數型別的定義處
    • command + shift + B (mac)
    • ctrl + shift + b (win)

程式碼摺疊

對程式碼塊進行摺疊和展開.

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

預覽方法定義

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


貼上板管理

對於複製貼上. 我們習慣只是單次c+v, 那麼如果你想檢視之前被覆蓋了的複製過的內容. AS同樣有複製貼上板來管理. 展示最近幾次的複製內容.


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

拆分視窗


只需要在標籤頁上右鍵. 選擇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等. 可以直接使用快捷的方式, 而不需要手動生成條件在進行程式碼塊的複製-貼上


快捷鍵

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

Extract

你可以經常使用它,提取出一個方法.


不僅僅如此, 你還可以對xml中的多個控制元件相同的屬性進行抽取為style


快捷鍵:

  • ctrl + alt + shift + T(win)

是不是很爽?

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

而程式碼中, 可以提取各種變數, 引數, 長廊.

程式碼模板

AS中已經內建了很多程式碼模板, 你可以很嗖嗖嗖的就完成之前倒背如流的程式碼. 如下一小部分


通過快捷鍵可調出這些程式碼模板

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

程式碼分析

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

Inspect Code & Code cleanup

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

Code cleanup功能可以進行自動的程式碼修復.

Dependencies

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

方法呼叫棧

對於某些方法來說, 檢視它被呼叫的地方和呼叫的順序是非常重要的. 可通過control + option + H快速查詢方法呼叫棧.

斷點除錯

快速斷點

條件斷點. 主要用在迴圈體內. 一個迴圈10次的懂得珍惜

~~~~~~~~~~~ o(∩_∩)o ~~~~~~~~~~~ 歡迎在我的【Github】為我提出意見 也希望在【我的領英】與您建立聯絡 這裡還有【我的簡歷】隨時可以查閱 哦對了最近還嘗試搭建了【個人主頁】 主頁訪問慢的話可以訪問【國內映象】

掌控之中成功;掌控之外註定失敗。

前言 前面介紹了TCP/IP協議族的組成,現在來看最底層的資料鏈路層。 鏈路層 鏈路層目的如下 為IP模組傳送和接收IP資料報。 為ARP傳送ARP請求和接收ARP應答。

學習猶如感情只有為之付出有所得。

 一、Java泛型入門基礎      1、 泛型歷史:集合中可以儲存任意型別物件,但是在取出時,如果要使用具體物件的特有方法時,需要進行向下轉型,如果儲存的物件型別不一致,在轉型過程中就會出現Clas

Windows 觸控式螢幕的 LBUTTONDOWN不單獨響應必須先MOUSEMOVE訊息LBUTTONDOWN

自己的程式是一個影象處理軟體,裡面要實現影象的拖動功能,程式在滑鼠操作的情況下,完全正常。當滑鼠點選在一張圖片上,然後移動,則選中的影象會跟隨滑鼠移動。但是用手指在觸控式螢幕上操作的時候,圖片無法移動。仔細觀察現象後,發現是因為手指單擊這訊息沒有響應,所以後續移動操作自然無

Android——只需兩步使你的Android Studio支援Lambda表示式(更新)

只需兩步,使你的使Android Studio支援Lambda表示式 Java8的一大新特性就是較為健全的Lambda表示式,但是目前Android studio並不支援這一特性。但是可以通過在gradle中配置幾行程式碼,引用Github上的資源,就可以讓你

不看OCJP考題知道自己的Java基礎差(一)

不看OCJP考題,不會知道自己的Java基礎有多差(一) 第一題 public class Mule { public static void main(String[] args)

Android Studio包名打包

顯示 rri utf Coding schema style 市場 ret gravity 來自:http://m.blog.csdn.net/u011315960/article/details/73251196 前言 最近有點小忙,博客都落下了,今天趕緊寫點東西補上

Android Studio JNI 坑總結

1.什麼是 JNI JNI——(Java Native Interface),他是java平臺的特性,不是安卓系統提供的。他定義了一些JNI函式,來讓開發者可以通過呼叫這些函式來實現java程式碼呼叫C/C++程式碼。 2.如何使用 JNI 我們先將寫好的C/C++程式碼編譯成對應平臺的

Android Studio 配置個程式碼倉庫(maven)

收集了一些。方便copy使用。 repositories { mavenCentral() maven { url "https://jitpack.io" } maven { url "http://maven.aliyun.com/nexus/content/grou