Android ButterKnife框架的使用方法

 寫在前面:大家好!我是ACfun,我的暱稱來自兩個單詞Acceptedfun。這篇博客記錄一下如何在Android Studio開發環境中安裝及使用ButterKnife註解框架。如果博客中有不足或者的錯誤的地方歡迎在評論區或者私信我指正,感謝大家的不吝賜教。我的唯一博客更新地址是:https://ac-fun.blog.csdn.net/。非常感謝大家的支持。

ButterKnife簡介

 butter knife是出自 JakeWharton 的一個開源庫,它是一個專注於 Android 系統的 View 依賴注入框架。它通過註解的方式來替代 android 中 view 的相關操作。減少大量的 findViewById 以及 setOnClickListener 代碼,且對性能的影響較小。在安卓項目中使用 ButterKnife 會極大地加快我們開發的速度。
 ButterKnife GitHub項目地址:https://github.com/JakeWharton/butterknife
ButterKnife

ButterKnife的優勢

  • 強大的 View 綁定和 Click 事件處理功能,簡化代碼,提升開發效率。
  • 方便的處理 Adapter 裏的 ViewHolder 綁定問題。
  • 提高APP運行效率,使用配置方便。

安裝ButterKnife插件

 在 Android Studio 中使用 ButterKnife 需要首先安裝該插件。注意:SDK版本爲23及以下的無法安裝使用1.6.0版本,只能使用1.5.0版本。

如何查看SDK版本

 有很多方法可以查看SDK版本,我寫一下我使用的方法:
首先找到SDK的安裝位置,然後雙擊打開SDK Manager.exe,點擊Tools,再點擊About即可看到SDK的版本號。
SDK Manager
版本號

1.5.0版本下載安裝方法

 點擊 【File】—>【Setting】—> 【plugins】,然後輸入 butterknife 安裝插件。如果SDK版本爲23及以下需要從網上下載壓縮包然後再安裝。
Pluging
這裏默認安裝的是1.6.0版本的,但是我的SDK版本是23的,所以需要從官網下載1.5.0的安裝包,進行離線安裝。點擊下圖中的pluging homepage即可進入官網。然後找到1.5.0版本下載,放到一個固定的位置,建議放在Android Studio的文件夾中。我放在了plugins文件夾中。

pluging homepage
下載1.5.0
下載完成之後在Android studio的 pluging 界面點擊那個小齒輪,然後點擊Install plugins from Disk……,找到剛纔下載的文件安裝完之後重啓即可。
外部安裝
外部安裝方法


配置使用ButterKnife

 安裝好插件之後,在Module中的build.gradle中的 dependencies 中添加以下代碼:

implementation 'com.jakewharton:butterknife:7.0.1'
annotationProcessor 'com.jakewharton:butterknife:7.0.1'

然後點擊Sync Now等待更新完成就可以使用ButterKnife依賴注入框架了。
配置


ButterKnife的基本使用方法

初始化控件

 配置完之後我們就可以使用這個框架了。當我們畫好界面之後需要在對應的 Activity 中初始化我們在 layout 寫的控件。具體方法爲:右鍵 layout -> 點擊Generate->Generate ButterKnife Injections。做完這些我們就可以直接完成初始化控件,而不需要一個一個的findViewByid()……了。
Generate
ButterKnife
初始化

控件使用方法

 初始化完成之後我們就可以使用控件了,不過使用方法和我們使用findViewByid()方法不同。基本的使用方法如下:

TextView 的使用

  1. 初始化(一般是自動生成的)
@butterknife.Bind(R.id.tv_time)
TextView tv_time;

2.使用舉例

tv_time.setText();

Button 的使用

1.初始化(一般是自動生成的)

@butterknife.Bind(R.id.btn_skip)
Button btn_Skip;

2.監聽事件(也是可以自動生成的,在初始化的時候再OnClick那一欄打鉤即可)

    @butterknife.OnClick(R.id.btn_skip)
    public void onClick() {
        // 加入具體的操作
        // ……
    }
}

ButterKnife比較常用的功能

 上面只是簡單的舉了兩個ButterKnife使用的例子。ButterKnife還有很多作用,這裏就簡單的列舉一下比較常用的功能,這裏就不一一展開敘述了更多使用方法請參考ButterKnife 官方使用文檔

  • 省略findViewById()
  • 省略setOnClickLintener()
  • ListView的點擊@OnClick,CheckBox的@OnClickedChanged也可以實現省略操作。
  • 可以一次指定多個id,爲多個View綁定一個時間處理方法。
  • 等等

我是 ACfun !感謝大家的支持。
戰術後仰

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章