注解框架 Butter knife 初次使用
Butter knife 简介
Butter knife实在是太好用了!有了这个注解框架,再也不用写烦琐的findViewById了,给控件添加点击事件啥的特别方便,大力推荐!
一开始用的时候确实不太习惯,但是用完之后发现很实用啊。代码简洁了不少啊。
官方翻译太绕口,其实就是用@BindView 替代布局引用的findViewById
类似这样式儿的
class ExampleActivity extends Activity{
@BindView(R.id.title)TextView title;
@BindView(R.id.subtitle)TextView subtitle;
@BindView(R.id.footer)TextView footer;
@Override
public void onCreate(BundlesavedInstanceState{
super.onCreate(savedInstanceState);
setContentView(R.layout.simple_activity);
ButterKnife.bind(this); //必须要写,否则不生效
//TODO Use fields...
}
}
对应我们之前写的这部分代码:如下
TextView title= (TextView) findViewById(R.id.title);
TextView subtitle= (TextView) findViewById(R.id.subtitle);
还有点击事件,用法如下
@OnClick({R.id.back})
public void onClick(View view) {
switch(view.getId()) {
case R.id.back:
Toast.makeText(MainActivity.this,"关闭",Toast.LENGTH_SHORT).show();
break;
}
}
Butter knife 的集成也很简单,在project 的gradle.build中添加
dependencies{
classpath'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
在app的gradle.build 里面引用一下库,如下:
apply plugin: 'android-apt'
dependencies {
compile 'com.jakewharton:butterknife:8.8.1'
apt 'com.jakewharton:butterknife-compiler:8.8.1'
}
第一次写,如有疑问或建议,就评论吧。一次会在第一时间更正啊。