偷工不減料,Android工具推薦(1)

概要##

1.Butter Knife自動生成代碼;
2.半自動(僅需復(fù)制粘貼)生成實體類;

1. Butter Knife###

這么流行就不做介紹了,GitHub鏈接
https://github.com/JakeWharton/butterknife
為項目添加Butter Knife,然后我們再添加一款插件,以后就再也不需要findViewById()了。

為Android Studio安裝該插件

如上圖,安裝好Android ButterKnife Zelezny插件,然后重啟Android Studio.

下面我們來感受一下偷工不減料。
新建一個布局,如下圖:


任意添加兩個含id的控件

這里有些同學(xué)可能會遇到一個bug,就是Android N右側(cè)視圖無法預(yù)覽,解決方案很簡單,點(diǎn)擊上圖右上角的機(jī)器人,選擇API 23(不含N的那個),然后刷新一下就OK了。

接著,我們在Activity內(nèi)右鍵布局名稱,即右鍵下圖中的butter_activity, 在彈出的菜單中選擇Generate, 然后會出現(xiàn)子菜單,如下圖:


右鍵布局名稱一鍵生成含id的控件

點(diǎn)擊選擇Generate Butterknife Injections,會彈出下圖界面


自動生成了控件變量

命名遵照Android Studio中你所設(shè)置的規(guī)則,按Confirm確認(rèn)。

看下圖,控件變量已經(jīng)生成了,無需findViewById,也無需再次命名了。


最終形態(tài)

2. 半自動生成實體類###

比如服務(wù)器返回的內(nèi)容字段為:

{
    "name": "Winter",
    "id": 123,
    "hobbys": [
        {
            "name": "play",
            "degree": 4
        },
        {
            "name": "play",
            "degree": 4
        }
    ]
}

也許是一團(tuán)遭的,比如這樣

xyz: {"name": "Winter","id": 123,"hobbys": [{ "name": "play","degree": 4},{"name": "play","degree": 4}]}

沒關(guān)系,我們可以現(xiàn)在這里 http://www.bejson.com 校驗并復(fù)制好正確格式的Json數(shù)據(jù)。

然后在這個頁面
http://www.bejson.com/json2javapojo/
把正確的Json數(shù)據(jù)丟上去,一鍵生成Java實體類???,實體生成了

一鍵生成的Java實體

上圖中生成的實體不需要全部復(fù)制,那樣太麻煩。我們只需要復(fù)制這一部分:

private String name;

private int id;

private List<Hobbys> hobbys ;

注意,Hobbys也是一個實體,這里我們暫且不管,生成該實體的方法與下面要說的一致。在代碼中把Hobbys改成HobbyEntity或Hobby更合理。

現(xiàn)在,我們來新建一個實體類,并把剛剛復(fù)制的內(nèi)容粘貼上去,如下圖:


右鍵并選擇Generate里的Getter and Setter自動生成Get與Set方法

右鍵實體類中的空白區(qū)域,在彈出的菜單中選擇Generate, 然后出現(xiàn)上圖子菜單,這里我們可以一鍵生成Get、Set方法,還可以一鍵序列化(Parcelable)。

p.s.一鍵序列化需要安裝一個插件 Android Parcelable code generator,請按照前面所說的方法在Android Studio插件設(shè)置中搜索并安裝。

然后就大功告成啦~


半自動生成的實體類
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容