1. 程式人生 > >ButterKnife的使用以及不能自動生成程式碼問題的解決

ButterKnife的使用以及不能自動生成程式碼問題的解決

出處:http://www.cnblogs.com/zhengjunfei/p/5910497.html

大家知道在我們android程式設計的時候,經常會遇到findViewById的問題,尤其是當你的佈局中的view較多的時候,initView是一個很耗時的過程,針對這一問題,ButterKnife可以完美解決,大大提高程式設計的效率,廢話不多說,先上個圖看一下效果吧:

怎麼樣,效果很炫吧?超方便的一個開源外掛,下面我來介紹一下在專案中的配置過程:

方法一:在gradel裡面直接搜

開啟Android Studio的File->Project Structure

點選左邊選單欄的app選項,並且點選右邊上方的Dependencies這個Tab選項,然後點選右上角"加號"選擇"1 Library dependency",然後在彈出框中直接搜butterknife,就可以搜到,然後選擇引入:

引入之後會在專案的build.grade檔案下的dependencies下生成:compile 'com.jakewharton:butterknife:8.4.0'(位置1)這樣一行程式碼,接下來你需要同樣在dependencies 下面加入這樣一行程式碼:apt 'com.jakewharton:butterknife-compiler:8.4.0' (位置2)   並在該檔案根目錄最上面加入這樣一行程式碼:apply plugin: 'com.neenbedankt.android-apt'(位置3),並同時在整個Project的build.grade檔案的buildscript的dependencies下面加入這樣一行程式碼:classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'

(位置4),然後點選編譯器右上角的Sync Now同步修改:

專案的build.grade檔案:

整個Project的的build.grade檔案:

Sync Now:

然後最關鍵的一步:開啟File->Settings->plugins,在搜尋欄內搜尋ButterKnife,要是沒有引入該軟體,就install,將這個軟體打鉤選中使用:(沒有這一步不能自動生成程式碼)

然後是最後一步,在使用前在onCreate方法中(一定要在setContentVIew之後)呼叫ButterKnife.bind(this);然後就可以自動生成程式碼了,生成方式:選中佈局檔案的名字,右擊選擇Generate->Generate BUtterknife injecktions,會彈出來下面這個對話方塊:

然後在Variable Na....一欄修改預設的一些物件的一些名字,點選OK,就生成了相應的程式碼了.

最後看一下最終效果:

希望可以幫到大家.