1. 程式人生 > >Android Studio 第三方外掛配置與應用

Android Studio 第三方外掛配置與應用

Android Studio擁有強大的功能,只是有些我們還不知道,比如說,他可以整合許多第三方外掛,幫助我們打打提高開發效率。至於外掛的種類繁多,需要我們在自己的開發過程中,一一檢驗哪些是我們真正需要的,哪些我們很少甚至根本用不到。話不多說,我們直接來說明Android Studio外掛的配置和應用。在此我僅舉幾個我自己經常用到的外掛,不過使用外掛的過程都是大同小異,其各自的功能當然還是要自己一一實際操作之後才會更加明白。

OK,我們首先由一款應用範圍極廣且為眾多程式設計師鍾愛的外掛——ButterKnife說起:

首先快捷鍵搞起,在Android Studio主版面按住Ctrl+Alt+S開啟設定介面,如果你對Android Studio的常用快捷鍵還不夠熟悉,可以看我整理的另一篇博文:http://blog.csdn.net/songkai320/article/details/51773634 。

直接上圖:因為我已經安裝過這個外掛了,所以沒有Install Plugin的綠色按鈕:

點選中間的 Browse Repositories.

OK,安裝好之後重啟Android Studio,和一般的外掛不一樣,要使用ButterKnife,還需要在Module的build.gradle檔案中新增如下語句:

compile 'com.jakewharton:butterknife:8.0.1'

什麼,你說你沒有搜尋到任何第三方外掛,那麼請把你設定的代理先取消。改為 No proxy.

好了,我們現在可以進行編寫程式碼了。佈局檔案你們就自己寫吧,主要是學會這個外掛的用法:

public class MainActivity extends AppCompatActivity {

    @BindView(R.id.textView)
    TextView textView;
    @BindView(R.id.button)
    Button button;
    @BindView(R.id.switch1)
    Switch switch1;
    @BindView(R.id.toggleButton)
    ToggleButton toggleButton;
    @BindView(R.id.progressBar)
    ProgressBar progressBar;
    @BindView(R.id.seekBar)
    SeekBar seekBar;
    @BindView(R.id.textClock)
    TextClock textClock;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ButterKnife.bind(this);
    }
    
    @OnClick({R.id.textView, R.id.button, R.id.switch1, R.id.toggleButton, R.id.progressBar, R.id.seekBar, R.id.textClock})
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.textView:
                Toast.makeText(this, "view:我是textView" + view, Toast.LENGTH_SHORT).show();
                break;
            case R.id.button:
                Toast.makeText(this, "view:button" + view, Toast.LENGTH_SHORT).show();
                break;
            case R.id.switch1:
                Toast.makeText(this, "view:switch1" + view, Toast.LENGTH_SHORT).show();
                break;
            case R.id.toggleButton:
                Toast.makeText(this, "view:toggleButton" + view, Toast.LENGTH_SHORT).show();
                break;
            case R.id.progressBar:
                Toast.makeText(this, "view:progressBar" + view, Toast.LENGTH_SHORT).show();
                break;
            case R.id.seekBar:
                Toast.makeText(this, "view:seekBar" + view, Toast.LENGTH_SHORT).show();
                break;
            case R.id.textClock:
                Toast.makeText(this, "view:textClock" + view, Toast.LENGTH_SHORT).show();
                break;
        }
    }
   
}

我不會告訴你,上述程式碼我寫的不超過5行,全都是自動生成的。

自動生成方法:選中佈局檔名稱,此處是activity_main,右鍵選擇Generate——>Generate ButterKnife Injections,怎麼樣,是不是很人性化的設計,還可以修改變數名稱。

你可能還不相信我居然連5行程式碼都沒自己寫,因為他們都還有各自的監聽事件。那麼我要向你解釋,他們的監聽事件我只寫了一行程式碼中的彈出字元。好了,其實我是用了另一個第三方外掛,那就是:Android Postfix completion

可根據字尾快速完成程式碼。

@Override
protected void onStart() {
    super.onStart();
}

@Override
protected void onResume() {
    super.onResume();
}

@Override
protected void onPause() {
    super.onPause();
}

@Override
protected void onStop() {
    super.onStop();
}

@Override
protected void onDestroy() {
    super.onDestroy();
}

這一段程式碼是不是排列得很整齊,完全是按照Activity的生命週期來的。其實這是使用了另一個外掛:Lifecycle Sorter。它的功能是可以根據Activity或者fragment的生命週期對其生命週期方法位置進行先後排序。快捷鍵是Ctrl+Alt+K

筆者還是用了另外一個外掛,那就是CodeGlance,它的最大的用途就是可用於快速定位程式碼.畢竟Android Studio旁邊那個滑動符太小了,不方便。

最後,筆者在簡單介紹另外兩個外掛:

AndroidAccessors

其實不用多說,它的作用就是快速為一個類裡面的所有屬性(當然程式設計師可以自己指定一些屬性)快速生成get(0和set()方法。

Gsonformat

它可根據json資料快速生成java實體類,實體類需要繼承JSONModel類。這個我還沒有用過。讀者可以自己操作一下。