Butter Knife 黄油刀大家应该都挺熟悉的,有这个之后,就不用写一堆的findViewById,体力活,最近试着玩玩Kotlin语言,也就尝试在Kotlin语言环境下使用ButterKnife,有一点小问题,解决并分享一下。
先看看java环境的用法
1.安装插件,然后重启Android studio。

安装插件.jpg
2.使用,点击一下在setContentView(R.layout.activity_main);然后快捷键Alt+insert。

Alt+insert.jpg
3.使用。

使用.jpg
4.完成
@BindView(R.id.circleView)
CircleView circleView;
@BindView(R.id.tv_test)
TextView tvTest;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
}
/*
* 多个控件点击事件,会有大括号包起来,中间逗号隔开
* */
@OnClick({R.id.circleView, R.id.tv_test})
public void onViewClicked(View view)
{
switch (view.getId())
{
case R.id.circleView:
break;
case R.id.tv_test:
break;
}
}
@Override
protected void onDestroy()
{
ButterKnife.bind(this).unbind();
super.onDestroy();
}
Kotlin环境
1.随意新建一个kotlin文件

new kotlin.jpg
2.然后工程会有几个地方变化

多了Configure.jpg

ok.jpg

module.jpg

project.jpg
3.添加对kotlin的支持
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
//控件插件
implementation 'com.jakewharton:butterknife:8.8.1'
kapt 'com.jakewharton:butterknife-compiler:8.8.1'
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
}

添加kotlin支持.jpg
4.使用,直接用就好,不用再BindView了。

不需要BindView了.jpg

直接使用.jpg
5.注意要对应的xml,以免同样的控件id引起空指针异常。

注意.jpg
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持菜鸟教程(cainiaojc.com)。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#cainiaojc.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。