Android 框架引用之EventBus、ButterKnife、Glide

一:Glide

build.gradle

dependencies{

implementation 'org.greenrobot:eventbus:3.1.1' //eventBus
implementation 'com.github.bumptech.glide:glide:4.7.1'

implementation "com.jakewharton:butterknife:${BUTTERKNIFE_VERSION}" //butter knife

annotationProcessor "com.jakewharton:butterknife-compiler:${BUTTERKNIFE_VERSION}"

}

Glide.with(this).load(url).into(mainBinding.imgOne);

int resourseId = R.mipmap.classinfo_honour;
Glide.with(this).load(resourseId).into(mainBinding.imgTwo);

RequestOptions requestOptions = new RequestOptions();
requestOptions.placeholder(R.mipmap.ic_launcher);
Glide.with(this).load(resourseId).apply(requestOptions).into(mainBinding.imgTwo);


二:EventBus
//配置见dependencies
//接收数据页面,注册EventBus
@Override
protected void onCreate(Bundle savedInstanceState) {
  if (!EventBus.getDefault().isRegistered(this)) {
  EventBus.getDefault().register(this);//注册
  }
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void onEventMessage(EventTeacher eventTeacher) {
TeacherBean teacherBean = eventTeacher.teacherBean;
mainBinding.setTeacher(teacherBean);
}
@Override
protected void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);//取消注册
}
//发送数据页面
TeacherBean teacherBean1 = new TeacherBean();
teacherBean.name = "w先生";
teacherBean.birthday = "2019-07-13";
EventBus.getDefault().post(new EventTeacher(teacherBean1));

//事件方法
public class EventTeacher {
public TeacherBean teacherBean;

public EventTeacher(TeacherBean teacherBean) {
this.teacherBean = teacherBean;
}
}

三:注解框架工具 butterknife
//配置见dependencies

在使用前,我们再添加一个自动生成代码的插件:zelezny

File->settings->Plugins

 

 

省略findViewById:

1 在activity 中:现在layout中写好控件和id,然后到对应的Activity中右击鼠标:

(或者alt+insert),鼠标的光标一定要在setContentView中的layout后面

 

 选择Generate ButterKnife inJections

 

 

posted @ 2019-12-31 15:07  寒夜美美  阅读(329)  评论(0)    收藏  举报