日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

The powerful Android Studio

發(fā)布時(shí)間:2025/7/25 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 The powerful Android Studio 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

英文來源: The powerful Android Studio
作者: Saúl Molinero(@saulmm),感謝作者對(duì)本篇文章的翻譯授權(quán)。
譯者: D_clock愛吃蔥花
校對(duì): 湯濤(就職于海豚瀏覽器,微信公眾號(hào)AndroidTrending管理員)、Yasic(電子科技大學(xué)在校大學(xué)生,Diycode社區(qū)管理員)

Android Studio 作為 Android 開發(fā)的官方工具已經(jīng)有一段時(shí)間了。考慮到 IntelliJ IDEA 在開發(fā)過程中為編輯、調(diào)試、分析、重構(gòu)等眾多功能上提供了更高效的方式,為此,Android Studio 選擇在 IntelliJ IDEA 的基礎(chǔ)上進(jìn)行開發(fā)。在最新版的 Android Studio 中(寫這篇文章時(shí),最新版本是2.2)包含了很多改進(jìn), 比如 新的 UI 編輯器、新的 ConstraintLayout 布局交互方式等。本文的關(guān)注點(diǎn)不在于涵蓋這些新特性。這次,我想介紹一些自己平時(shí)經(jīng)常使用的 Android Studio 小技巧。這篇文章原本是我在Exfest’16 活動(dòng)中的一篇演講稿(沒有PPT),正好有新的借口來寫一篇新文章:) 。讓我們開始吧!

聲明

  • 文中所有快捷鍵對(duì)應(yīng)平臺(tái): Mac OS X 10.5+

  • 文中展示快捷鍵操作的GIF圖底部的那個(gè)綠框框,是一個(gè)很好用的插件,叫Presentation Assistant,對(duì)用于演示和結(jié)對(duì)編程是很棒的:)。

雜項(xiàng)

避免自動(dòng)顯示Logcat窗口

在運(yùn)行應(yīng)用的時(shí)候,最好禁止展開 Android Monitor 窗口(因?yàn)樵谶\(yùn)行配置中默認(rèn)是展開的)。為此,可以在我們當(dāng)前的 Project 中,選擇 Edit Configurations -> Android Application -> Miscellaneous 路徑,關(guān)掉下面的勾選。

不顯示 Tab

正如 Hadi Hadiri 在他的文章中明確提到,使用這些 Tab 可能導(dǎo)致以下麻煩:丟失上下文,消耗寶貴的編輯空間,并且這些標(biāo)簽需要使用觸控板或鼠標(biāo)交互。如果這些 Tab 對(duì)你來說沒有什么用處,可以到 settings -> editor -> tabs 設(shè)置中,將 Placement 屬性設(shè)置為 None。

IntelliJ IDEA 不需要使用標(biāo)簽也能高效地在代碼間進(jìn)行切換。

導(dǎo)航

JetBrains團(tuán)隊(duì)的目標(biāo)之一是鼓勵(lì)用戶盡可能減少使用鼠標(biāo)的頻率。有大量高效的操作命令,可以讓你的雙手在不需要離開鍵盤的情況下,變得更加高效精準(zhǔn)。

查找類、文件和操作

IntelliJ IDEA 以及 Android Studio 都提供了查找文件、類和操作的方案。

任意搜索 - ? + ?

它會(huì)顯示一個(gè)搜索所有類型元素的對(duì)話框:可以用于查找類、文件、操作等。這里建議盡量避免使用這個(gè)操作,因?yàn)槿我獠檎視?huì)使得你寶貴的電腦資源變得更加緩慢。

搜索類型 - ? + O

它可以讓你快速地搜索到枚舉類型,類,接口等。

搜索文件 - ? + ? + O

它可以讓你搜索各種類型的文件,對(duì)像布局這樣的xml文件,資源文件等同樣有用。

搜索操作 - ? + ? + o + A

通過這個(gè)功能,你能搜索并打開菜單、設(shè)置、工具窗口等,并且會(huì)給出一些操作的快捷鍵。因此,當(dāng)你忘記這些操作時(shí),你可以通過搜索這些操作從而快速找到它們。

優(yōu)點(diǎn):

  • 不需要寫出我們查找的每一個(gè)類的全稱。假設(shè)我們正在查找CharacterDetailPresenter這個(gè)類,那就只需輸入CharacterPresenter即可。

  • 搜索類(? + O)的時(shí)候,我們可以通過在類名后面添加冒號(hào)和行數(shù),來跳轉(zhuǎn)到類中指定的某一行里面,例如:CharacterDetailPresenter:50。

  • 我們搜索文件時(shí),在文件名的前面加“/”,就可以找到該名稱對(duì)應(yīng)的目錄。例如:輸入“/land”,對(duì)話框?qū)?huì)提示與landscape相關(guān)的配置目錄。

  • 我們可以篩選出包含搜索文件的目錄,例如,輸入 strings 可以看到 values-es/strings.xml 或者 values/strings.xml。

項(xiàng)目窗口 - ? + 1

對(duì)于瀏覽項(xiàng)目文件,有一個(gè)不錯(cuò)的方法是通過使用快捷鍵? + 1 來隱藏或者顯示我們的項(xiàng)目窗口。

優(yōu)點(diǎn):

  • 通過快捷鍵 ? + ? + ? / ?,我們不用鼠標(biāo)就能改變當(dāng)前焦點(diǎn)所在窗口的尺寸。

  • 在瀏覽界面中,我們可以通過文件或文件夾的名稱來搜索,搜索到的匹配項(xiàng)將高亮顯示,并且可以通過方向鍵跳轉(zhuǎn)到指定的匹配項(xiàng)。

跳轉(zhuǎn)到導(dǎo)航欄 - ? + ↑

導(dǎo)航欄是一個(gè)有趣的交互元素。使用它,我們可以方便地瀏覽項(xiàng)目文件,這與在項(xiàng)目窗口中的操作類似。即使導(dǎo)航欄被禁用,也能通過快捷鍵 ? + ↑ 重新啟動(dòng),并獲取焦點(diǎn)。

優(yōu)勢(shì):

  • 我們可以在導(dǎo)航欄的環(huán)境下執(zhí)行某些文件操作,比如,通過快捷鍵 ? + N 創(chuàng)建新文件或者使用 ? 刪除它們。

顯示和隱藏窗口

操縱這些窗口有不同的方式:顯示和隱藏單個(gè)窗口,跳轉(zhuǎn)到上一個(gè)活動(dòng)窗口并使它獲得焦點(diǎn),當(dāng)使用某個(gè)面板時(shí)恢復(fù)焦點(diǎn)到編輯器等。

顯示或恢復(fù)所有窗口 - ? + ? + F12

顧名思義,它能夠讓你隱藏和恢復(fù)所有的可視窗口。

跳轉(zhuǎn)到上一個(gè)工具窗口 - F12

恢復(fù)顯示上次使用過的窗口,并使其獲得焦點(diǎn)。

返回到編輯器

當(dāng)我們的焦點(diǎn)在某個(gè)窗口上,我們可以在不使用鼠標(biāo)的情況下通過按鍵 ? 返回到我們的編輯器中。

最近打開過的文件

當(dāng)我們需要和一堆文件打交道時(shí),這些操作可以幫我們節(jié)約不少時(shí)間:

最近打開過的文件 - ? + E

它可以顯示出最近打開過的文件。

最近編輯過的文件 - ? + ? + E

它可以顯示出最近打開并編輯過的文件。

一個(gè)文件的結(jié)構(gòu)

快速導(dǎo)航到一個(gè)類中不同屬性和方法的方式是使用 file structure 操作,你可以使用快捷鍵 ? + F12 ,或者使用快捷鍵 ? + A 并輸入 file structure 。這個(gè)功能還有一些其他的特點(diǎn),它能夠執(zhí)行搜索操作,能夠快速得到我們查找的東西并替換相應(yīng)的字符。

與上面類似,window structure(? + 7) 在固定位置展示了相同的信息。

顯示當(dāng)前實(shí)現(xiàn)和父類方法

有時(shí)候,顯示當(dāng)前父類、接口或者一個(gè)方法的實(shí)現(xiàn)是非常有用的。選中類名或方法名并使用快捷鍵 ? + B,可以讓我們一目了然的看到當(dāng)前所有的實(shí)現(xiàn),按ENTER鍵可以跳轉(zhuǎn)到這些實(shí)現(xiàn)里面。

與上面類似,在一個(gè)方法實(shí)現(xiàn)里面使用快捷鍵 ? + U,也可以跳轉(zhuǎn)到已經(jīng)被實(shí)現(xiàn)的方法或類里面。

顯示下一個(gè)錯(cuò)誤 - F2

當(dāng) Android Studio 高亮提示某些編譯錯(cuò)誤時(shí),我們通常都是靠滾動(dòng)鼠標(biāo)去定位解決這些錯(cuò)誤。使用 IntelliJ IDEA 的顯示下一個(gè)錯(cuò)誤(F2)功能,能夠迅速的將光標(biāo)移動(dòng)到錯(cuò)誤前面,從而避免我們把手離開鍵盤。

首先,按住 F2 會(huì)讓光標(biāo)依次移動(dòng)到每個(gè)錯(cuò)誤前面。一旦解決某個(gè)錯(cuò)誤,再按 F2 光標(biāo)將會(huì)移動(dòng)到當(dāng)前文件中指定的下一個(gè)錯(cuò)誤前面。

返回之前編輯的位置 - ? + ? + ?

當(dāng)修改某些代碼量很龐大的類時(shí),我們經(jīng)常需要改變類中不同位置的代碼。比如:寫一些聲明,編輯一下方法的實(shí)現(xiàn)等。在你添加聲明后,不需要使用鼠標(biāo)就能將光標(biāo)移回之前編輯的位置是一個(gè)非常實(shí)用的功能。返回之前的編輯位置 (? + ? + ?),正是使用上面所說的操作。它可以在沒有更改代碼的情況下就讓光標(biāo)移回之前的編輯位置。

編輯代碼

替換取代添加

在寫代碼的時(shí)候,通常我們會(huì)為了得到一些代碼提示而使用補(bǔ)全提示對(duì)話框。當(dāng)我們使用 ENTER 鍵決定采用某個(gè)補(bǔ)全提示時(shí),這段新代碼會(huì)被添加到原有代碼前面,導(dǎo)致產(chǎn)生錯(cuò)誤。

如果用 TAB 鍵取代 ENTER 鍵,并且我們想要調(diào)用的方法與原有方法的參數(shù)個(gè)數(shù)相同,那么這些新代碼將會(huì)自動(dòng)替換并使用舊的參數(shù)設(shè)置。

補(bǔ)全當(dāng)前語(yǔ)句 - ? + ? + ENTER

像使用 Android Studio 這樣功能強(qiáng)大的 IDE,就沒必要去擔(dān)心一些基本的語(yǔ)法元素,如逗號(hào)或者分號(hào)。

某些情況下,使用補(bǔ)全當(dāng)前語(yǔ)句的操作,它會(huì)根據(jù)當(dāng)前情況自動(dòng)添加一些必要的語(yǔ)法元素。

添加選中內(nèi)容到下一個(gè)位置 - ? + G

有些情況下,為了能夠同時(shí)編輯多行代碼,同時(shí)使用多個(gè)光標(biāo)來是非常高效的。通過添加選中內(nèi)容到下一個(gè)位置(? + G)這個(gè)功能,我們可以移動(dòng)光標(biāo)將選中格式的內(nèi)容添加到想要的地方。在這個(gè)功能上,Android Studio 和 IntelliJ IDE 甚至還給了一些更酷的編輯工具,比如:剪切和粘貼代碼片段,選擇工具等。

舉一個(gè)使用場(chǎng)景,例如,在Activity或Fragment中使用ButterKnife框架的注解去改變我們綁定View的方式。

合并成一行 - ? + ? + J

當(dāng)一個(gè)字符串在不同行上多次連接,使用合并成一行的操作會(huì)變得非常有用,它可以將其合并成為一行,并且不用擔(dān)心需要?jiǎng)h除大量的連接符號(hào)。

查看參數(shù)信息 - ? + P

添加一個(gè)方法的調(diào)用,Android Studio 會(huì)展示一個(gè)調(diào)用方法所需參數(shù)的彈窗,這個(gè)彈窗會(huì)在幾秒鐘后消失。每當(dāng)調(diào)用方法的時(shí)候,我們可以使用 ? + P 來查看方法所需要的參數(shù)信息。

包裝代碼 - ? + T

某些時(shí)候,我們可能需要去包裝某些特定的代碼,比如:添加一個(gè)條件判斷,遍歷或捕獲異常。為此, IntelliJ IDEA 和 Android Studio 提供了一個(gè) Surround with 的功能,使用快捷鍵 ? + T 即可調(diào)出操作窗口。

我們可以在對(duì)話框中選擇不同的操作,比如:條件、循環(huán)、異常等,甚至活動(dòng)模板。

優(yōu)點(diǎn):

我們?cè)诖蜷_XML布局文件的場(chǎng)景下調(diào)出對(duì)話框,會(huì)顯示一些提示信息。其中包含少量幾個(gè)自帶的活動(dòng)模板,比如:通過它可以很簡(jiǎn)單的做到,把一個(gè) View 或者一個(gè) ViewGroup 放到另一個(gè) ViewGroup 中。這就是使用活動(dòng)模板的例子,通過 surround with 彈窗可以將 View 放到 ViewGroup 中。

上下移動(dòng)代碼 - ? + ? + ↑/↓

為了不需要手動(dòng)復(fù)制粘貼的去移動(dòng)代碼。通過快捷鍵 ? + ? + ↑/↓ 來移動(dòng)我們選中內(nèi)容的方式,將是非常高效的。

優(yōu)點(diǎn):

這個(gè)操作對(duì)于編輯XML布局文件的時(shí)候非常有用。假如我們選中一個(gè) View,我們可以將其移動(dòng)到當(dāng)前布局文件中現(xiàn)有的viewgroup里面。

擴(kuò)大/縮小選擇區(qū)域 - ? + ↑/↓

由于繼承了 IntelliJ IDEA 的機(jī)制,Android Studio 使得我們?cè)谌x代碼的時(shí)候變得非常有趣。

在特定部分代碼上使用快捷鍵 ?+↑/↓ ,可以擴(kuò)大或縮小到下一個(gè)選中的區(qū)域范圍。

補(bǔ)全

活動(dòng)模板- ? + J

活動(dòng)模板是一個(gè)功能強(qiáng)大的機(jī)制,它可以避免我們編寫重復(fù)的代碼。通過 settings -> editor ->live templates 的步驟可以看到有它很多不同的定制選項(xiàng)。

Android Studio 默認(rèn)提供了很多 java 和 XML 都可使用的活動(dòng)模板。

通過快捷鍵 ? + J ,我們可以看到一個(gè)顯示當(dāng)前可用活動(dòng)模板的對(duì)話框。

調(diào)試

將調(diào)試器依附到Android進(jìn)程

Android Studio 可以避免每次都以 Debug 的方式啟動(dòng)進(jìn)程,(? D),因?yàn)槲覀冇写罅康臄帱c(diǎn)不需要在一開始就進(jìn)入 Debug 的狀態(tài)。

為此,Android Studio 提供了一個(gè)名字叫 Attach Debugger to Android Process 的操作。

條件斷點(diǎn)

在被多次調(diào)用的代碼中,每次都執(zhí)行到我們?cè)O(shè)置的斷點(diǎn)是非常麻煩的,有可能,我們只想在某種特定情況下才去檢查這段代碼的運(yùn)行狀態(tài)。在斷點(diǎn)上點(diǎn)擊右鍵進(jìn)行設(shè)置,只有在條件返回true時(shí),才會(huì)運(yùn)行到我們當(dāng)前設(shè)置的斷點(diǎn)。

Android Studio 會(huì)根據(jù)輸入內(nèi)容彈出補(bǔ)全提示對(duì)話框。

指定一個(gè)狀態(tài)

當(dāng)運(yùn)行到某個(gè)斷點(diǎn)時(shí),我們經(jīng)常會(huì)去檢查它的運(yùn)行狀態(tài)。現(xiàn)在不僅可以讀取這些狀態(tài)信息,還可以輸入運(yùn)行特定的某些代碼。

我們可以在 evaluate expression (也可以在watches窗口中) 編輯窗口中輸入變量,去查看它們的狀態(tài)信息。

不同類型的斷點(diǎn)

在右鍵彈出的斷點(diǎn)配置對(duì)話框中關(guān)閉 suspend 按鈕的打勾,并勾選 Log message to console 選項(xiàng)。這樣,就能在調(diào)試工具中的 console 窗口中輸出相應(yīng)的日志信息(? + 5)。

此外,我們同樣可以在對(duì)話框下設(shè)置 Log Evaluated Expression 選項(xiàng)來打印指定格式的日志。Android Studio 會(huì)再次根據(jù)你輸入的語(yǔ)句彈出補(bǔ)全提示對(duì)話框。

總結(jié)

為了在gradle構(gòu)建的時(shí)間里有點(diǎn)東西可以看,可以把這份小抄打印并貼到墻上(當(dāng)然你也可以一直看著你的代碼!:D)。

References(參考文章)

No tabs in IntelliJ Idea - Hadi Hadiri

IntelliJ IDEA Tips and Tricks - Hadi Hadiri

The experts’ guide to Android development tools - Google I/O ‘16

Android Studio for Experts- Android Summit ‘16

Android studio tips of the day roundups (all of them)- Philippe Breault

What’s new in Android

Dev tips- Sebastiano Poggi

第一時(shí)間掌握最新移動(dòng)開發(fā)相關(guān)信息和技術(shù),請(qǐng)關(guān)注mobilehub公眾微信號(hào)(ID: mobilehub)。

總結(jié)

以上是生活随笔為你收集整理的The powerful Android Studio的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。