讓你變懶的 Android Studio Live Templates

來源:互聯網
上載者:User

標籤:

俗話說,不想偷懶的程式員不是好程式員!那麼今天就教大家偷懶下!

先舉個例子,我們在 Android 開發中輸入 Toast ,然後會有如下如下的快速控制項目:

是不是很方便?

有同學問,這不就是自動補全嗎?錯了,乍一看是自動補全,其實不然。自動補全是對一個方法或類名的補全,比如你輸入 find 然後就會有 findViewById 方法提示你,你可以快速定位,但是我們實際開發中一般還需要對它強制轉型,然後加上 R.id.xx 來聲明它的 id,但是你可以試著輸入 fbc ,然後按 tab 或者 enter 鍵,你會發現比自動補全還要更方便。

這個就叫做 Live Template ,如果真要翻譯姑且就叫做即時模板吧,在 AS 中有兩種模板,一種就是你在建立一個 Activity 的時候可以選擇 Empty Activity、FullScreen Activity 之類的,這個一般是對你整個檔案而言的,還有一種就是本篇要介紹的 Live Template ,這個會在一些常用到的程式碼片段會非常有用。

開啟 設定 -> Editor -> Live Templates ,可以看到預設已經有很多 Live Templates 了,可以看下我的 Android 分類下有如下這些模板:

你都可以輸入那些縮寫來快速啟用這些模板,比如定義一個常量,快速設定 View 為 gone ,快速啟動一個 Activity 等,你都可以直接輸入 constgonestarter 來快速控制項目,是不是覺得很酷炫!

那具體是如何?的呢?我們不妨點擊這些模板列表的 starter ,有如下代碼:

public static void start(Context context) {    Intent starter = new Intent(context, $ACTIVITY$.class);    starter.putExtra($CURSOR$);    context.startActivity(starter);}

其中 ACTIVITY 代表當前所在的類名,CURSOR 代表當前滑鼠的定位位置,同理 newInstance 可以幫你在 Fragment 中快速聲明一個建立 Fragment 的方法,它的代碼如下:

public static $fragment$ newInstance($args$) {    $nullChecks$    Bundle args = new Bundle();    $addArgs$    $fragment$ fragment = new $fragment$();    fragment.setArguments(args);    return fragment;}

其中 $$ 代表是一個變數,中間包裹著這個變數的名字,你可以對這個變數宣告類型,這個後面再說。

是不是很容易理解呢?如果理解了那麼就可以來根據自己的使用習慣來定義自己的 Live Templates 了。

比如我們在開發中要經常寫單例模式吧?每次都要寫這麼一大段是不是很煩?那麼今天就教大家自訂一個單例模式的模板,以後輕鬆搞定單例。

設定 -> Editor -> Live Templates ,點擊右上方的 + 號,選擇 Template Group ,因為我習慣自訂的單獨分組先,這樣好管理,比如建立一個分組叫做 stormzhang ,然後就會看到有一個 stormzhang 的分組顯示在了列表裡,這時候滑鼠選中該分組,然後再點擊右上方的 + 號,點擊 Live Template ,然後如填寫縮寫與描述,緊接著把如下代碼拷貝到下面的輸入框裡(PS:單例模式的寫法有很多種,這裡就隨意以其中一種為例)

private static $CLASS$ instance = null;private $CLASS$(){}public static $CLASS$ getInstance() {    synchronized ($CLASS$.class) {        if (instance == null) {            instance = new $CLASS$();        }    }    return instance;}

注意這裡,如果你這段代碼是一些固定的代碼,那麼至此就結束了,但是這段代碼裡是動態,裡面有一些變數,因為每個類的類名如果都需要自己手動更改就太麻煩了,所以有個變數 CLASS ,所以需要點擊下面的 Define ,先要定義變數所屬的語言範圍,點開之後可以看到這裡支援 HTML、XML、JSON、Java、C++ 等,很明顯,我們這裡需要支援 Java ,選擇選中 Java :

緊接著,我們需要給變數 CLASS 定義類型,這裡的 CLASS 名字隨意取的,為了可讀性而已,你高興可以取名 abc ,真正給這個變數定義類型的是點擊 Edit variables 按鈕,來對該變數進行編輯,我們選擇 className() 選項,可以看到還有其他選項,但是看名字大家大概就猜到什麼含義了,這裡就不一一解釋了。

點擊 ok 儲存,至此我們定義的一個單例的 Live Template 就完成了。你可以隨意開啟一個類檔案,然後輸入 singletontab 或者 enter 鍵就可以看到神奇的一幕出現了,是不是很帥?

看完這篇文章想想自己還有哪些常用到的程式碼片段,趕緊把它定義成一個 Live Template 吧,你會發現你又可以變懶了!

本文原創發佈於公眾號 AndroidDeveloper「googdev」,轉載請務必註明出處!

讓你變懶的 Android Studio Live Templates

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.