前言
相信介紹 Android Studio 快捷鍵啊使用技巧的文章估計比我們屌絲程序猿的數(shù)量還要多,所以多我一篇不多,少我一篇不行,那本猿就把自己幾乎每天都用的快捷鍵整理一下,希望能有人用到,如果你已經(jīng)知曉了,那么請輕噴,畢竟我too young....(本屌用的是mac,所以win/linux稍微參考一下,畢竟差不多).

常用
1 . Cmd + C 復(fù)制,Cmd + Shift + C 復(fù)制文件路徑
2 . Cmd + V 粘貼, Cmd + Shift + V 從剪切板復(fù)制,會保留最近復(fù)制的五個值.
使用場景:當(dāng)你復(fù)制了一個 A 值,然后又復(fù)制了 B 值,此時又想用 A 值的時候.
3 . Cmd + F 在文件中查找, Cmd + Shift + F 在整個工程中查找.
使用場景:比如我要查找頁面上的 "網(wǎng)絡(luò)出錯"是在哪個文件彈出的,此時用 Cmd+Shift+F 輸入關(guān)鍵字,就會把所有出現(xiàn)該關(guān)鍵字的文件全部列出來.
4 . Cmd + O 搜索類文件,Cmd + Opt + O 在整個工程目錄下搜索文件
使用場景:當(dāng)你想找某個文件,但不想每個文件夾都點開每個文件,因為我們懶,此時Cmd + Opt + O 輸入文件名就能找到該文件了.
5 . Cmd +E打開最近的文件,Cmd + Shift + E 打開最近編輯過的文件
使用場景:把編輯過的文件全部給你列出來,方便查找

6 . Cmd + Shift + F7 高亮代碼,有的需要的電腦需要加fn才能生效
使用場景:想看某個類文件在哪些地方被使用,操作之后一目了然.

7 . Cmd + Opt + L 格式化代碼
8 . Cmd + / 行注釋 Cmd + Opt + / 塊注釋
9 . 退出以上操作 Esc
10 .Cmd + Shift + - / +(就是你的加號和減號的鍵,再說一遍就是Delete鍵左邊的那倆貨) 折疊方法/打開方法
使用場景:當(dāng)你想找某個方法在哪定義,而當(dāng)前類的行數(shù)又多又混亂的時候,那么不妨試試這個快捷鍵,簡直覺得整個世界都清凈了好么!~


附上一張快捷鍵的截圖 Github 鏈接在下方

Xml文件相關(guān)
在寫 xml 布局文件的時候會經(jīng)常遇到諸如 ImageView Lint 缺少contentDescription 的提示,API 版本不對爆紅,android : text ="" 的值會在屏幕閃一下的問題.那么我們完全可以使用tools來解決這些問題,當(dāng)然這些并不影響編譯,只不過對于我這種有代碼潔癖的來說難以忍受罷了.
tools屬性可以分為兩種:一種是影響 Lint 提示的,一種是關(guān)于 xml 布局設(shè)計的.
tools Lint 提示
1 . tools:text
在寫布局的時候有的時候 IDE 可以看到預(yù)覽效果,但是有些效果則必須在運行之后才能看見,比如這種情況:TextView 在 xml 中沒有設(shè)置任何字符,而是在activity中設(shè)置了 text. 因此為了在 IDE 中預(yù)覽效果,你必須在 xml 中為 TextView 控件設(shè)置 android:text 屬性
<TextView
android:id="@+id/tvDaV"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textColor="@color/honor_title"
android:textSize="13sp"
android:text="三金西瓜霜" />
然后告訴自己上線之前刪除就好了簡直是圖樣圖森破好么,幾乎每次都不會刪的,相信你也是這樣的,那么還是使用 tools:text="三金西瓜霜",這個值會顯示在預(yù)覽的時候,但是真機上是不會顯示的,只需兩步:
a . 在根部局添加命名空間 xmlns:tools="http://schemas.android.com/tools"
b . 在 TextView 中使用 tools:text="三金西瓜霜", tools 可以覆蓋 android 的所有標(biāo)準(zhǔn)屬性,將 android: 換成 tools: 即可.同時在運行的時候就連 tools: 本身都是被忽略的,不會被帶進 apk 中,搞定.

2 . tools:ignore
ignore 屬性是告訴 Lint 忽略 xml 中的某些警告.假設(shè)我們寫 ImageView 沒有寫android:contentDescription 這個屬性, Lint 就會提示該 ImageView 缺少contentDescription屬性.所以我們可以使用 tools:ignore 來忽略這個警告:
<ImageView
android:id="@+id/image_back"
android:layout_width="40dp"
android:layout_height="40dp"
android:padding="8dp"
android:src="@drawable/back"
tools:ignore="contentDescription"/>
3 . tools:targetApi
假設(shè) minSdkLevel 15,而你使用了 Api21 中的控件比如 RippleDrawable,則 Lint會提示警告.
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:color="@color/accent_color"
tools:targetApi="LOLLIPOP" />
4 . tools:locale(本地語言)屬性
默認(rèn)情況下 res/values/strings.xml 中的字符串會執(zhí)行拼寫檢查,如果不是英語,會提示拼寫錯誤,

通過以下代碼來告訴 Studio 本地語言不是英語,就不會有提示了.


Extract Resource
在編寫代碼的過程中我們應(yīng)該盡量減少使用硬編碼,就是不要再布局中直接使用字符串或者具體的尺寸值或者顏色值,而是應(yīng)該放在資源文件中.但是對于已經(jīng)存在的硬編碼方式我們又懶得改,或者是嫌麻煩,拿一個字符串來講,首先我們要在String.xml 文件中編寫一個 item 然后寫上 id ,寫上對應(yīng)的值,然后再在布局中引用@sring/xxxx......然后心里就默默的告訴自己算了吧,直接寫吧.其實不用這么麻煩,只需要選中這個值,按 Opt+Enter彈出菜單選擇 Extract String,在彈出的窗口填上id即可,如果該id已經(jīng)存在會生成失敗.


無用文件檢查
參考文章[讓你的apk減減肥]