赞
踩
ButterKnife是一个专注于Android系统的View注入框架,是大神JakeWharton的力作。有了ButterKnife,可以很轻松得简化代码,如避免重复手动输入findViewById找View对象等,这简直是“手废党”的福音啊~
代码已在GitHub开源:JakeWharton/butterknife.
本人环境:
Android Studio v4.0.1,
Gradle v6.1.1,
SDK 为Android 10.0+ ®.
共3处。
第一处:文件顶部添加插件。
//Butterknife
apply plugin: 'com.jakewharton.butterknife'
第二处:添加 compileOptions.
android {
...
//Butterknife
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
}
第三处:添加 dependencies.
dependencies {
...
// Butterknife
implementation 'com.jakewharton:butterknife:10.2.3'
annotationProcessor 'com.jakewharton:butterknife-compiler:10.2.3'
}
共1处,添加 classpath.
buildscript {
repositories {
google()
jcenter()
//mavenCentral()
}
dependencies {
classpath "com.android.tools.build:gradle:4.0.1"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
//butterknife!!!添加这一条classpath
classpath 'com.jakewharton:butterknife-gradle-plugin:10.2.3'
}
}
菜单栏File
-Settings
-Plugins
,在搜索框搜索 butterknife,选择“Android ButterKnife Zelezny” Install
,等待几秒,按提示重启AS即可。
@BindView()
绑定id@BindView
一键生成全部需要 findViewById()
的控件对象。
首先,右键 setContentView()
设置的布局xml名字,点击Generate
.
点击 Generate Butterknife Injections
.
选择需要引用的控件对象,还可以选择是否生成对应 OnClick
函数。其变量名也智能生成,可以看到 ID 到 Variable Name 的转换,自动去掉下划线且将下划线后的第一个字母大写化,符合Java变量名“小驼峰”命名规则,本人认为这点真的非常nice!
全部确定好后,Confirm
一键生成对象引用代码,直接拿来用即可。
类头部自动生成对象:
@BindView(R.id.edit_city)
EditText editCity;
@BindView(R.id.btn_simAlert)
Button btnSimAlert;
类尾部自动生成方法:
@OnClick(R.id.btn_comAlert)
public void onViewClicked() {
}
妙不可言~
@OnClick
Button点击事件@OnClick
RadioButton点击事件@OnCheckedChanged
CheckBox点击事件@OnPageChange
ViewPager事件监听(相关例子后续会再更新)
更多用法参考:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。