感恩
感谢JakeWharton大神 感谢 Square Inc.(这家公司带来了retrofit,okhttp etc..)
前言
相信大家对findViewById &OnClickListener 一点都不陌生吧,一个UI里面多个控件的话,相信你会疯掉!!!!不是开玩笑!在不知道Butter Knife之前,简直就是一个勤劳的XXX
Butter Knife介绍
一个view的注入框架,快速开发的框架。
传统的初始化及设置监听
Button btn =(Button)findViewById(R.id.button);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
}
});
Butter Knife 使用
public class MainActivity extends AppCompatActivity {
@BindView(R.id.button)
Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
onClick();
}
@OnClick(R.id.button)
public void onClick() {
Toast.makeText(getApplicationContext(),"this is button",Toast.LENGTH_SHORT).show();
}
}
开始偷懒之旅
偷懒之前配置还是要细心的!!
在Project build.gradle 增加
dependencies {
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
在Module buid.gradle 增加
apply plugin: 'android-apt'//这个要特别注意
dependencies {
apt 'com.jakewharton:butterknife-compiler:8.4.0'
compile 'com.jakewharton:butterknife:8.4.0'
}
然后等AS加载完就可以了!!!
大家会说了,这样子有偷懒吗?鬼脸!!!
大家来围观!!!
加上这个插件简直无敌的偷懒呀!!!
AS 安装
- Android studio
File->Settings..->Plugins-->Browse repositores..搜索ButterKnife Zelezny - 安装插件,重启android studio
哇哈哈,偷懒之旅成功!
注意事项
- 在Activity 中 ButterKnife.bind(this)必须在setContentView()之后
- 在Fragment中 ButterKnife.bind(this, view)
- 属性布局不能用private or static,否则会报错
参考干货
Butter Knife Github
Butter Knife Github原版说明
ButterKnife使用详解
关于:
一个非androider,开心就好,欢迎和我一起讨论!转载注明出处,谢谢!
网友评论