Android Studio 如何在 Kotlin 中使用 ButterKnife

前言:

         这篇文章就介绍一下,如何在kotlin 中怎么去使用 ButerKnife , 想必在java代码中去使用 ButterKnife 大家都玩的风生水起了,那么在kotlin中怎么去配置呢,怎么去使用KuterKnife呢,可能还有些小伙伴不是很熟悉,那么这里我就在这里介绍一下,如果在Kotlin 中怎么去使用。

 

正文:

         前面鄙人发表过的文章已经介绍过,如果在java 代码中去使用 ButterKnife了

        Android Studio 结合 ButterKnife Zelezny 高效使用 Butterknife(黄油刀) 

        同样也介绍过如果在Android Studio 中配置使用 Kontlin 

        Android Studio 配置使用 Kotlin

 

如果大家不是很熟的话,可以观看一下以上两篇文章。

 

好,接下来就直接开始介绍在Kotlin 中去使用ButterKnife 吧。

大家可以根据 这篇文章Android Studio 配置使用 Kotlin 配置好Kotlin 语言的环境。

 

第一步 :在项目中的 gradle 中去配置 一下代码

 

buildscript {
    ext.kotlin_version = '1.3.11'
    ext.butterknife_version='8.6.0'

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.2.1'
        classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
        classpath "com.jakewharton:butterknife-gradle-plugin:$butterknife_version"
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

Android Studio 如何在 Kotlin 中使用 ButterKnife_第1张图片

 

第二步:在 app module 下的 gradle 中配置加入 ButterKnife 并且引用Kotlin 应用插件

(这里要注意的是这里引用进入的 ButterKnife-comiler 前面不是 apt  现在是 kapt)

apply plugin: 'com.android.application'
apply plugin: 'kotlin-kapt'
apply plugin: 'kotlin-android'



implementation 'com.jakewharton:butterknife:8.8.1'
kapt "com.jakewharton:butterknife-compiler:8.8.1"

Android Studio 如何在 Kotlin 中使用 ButterKnife_第2张图片

 

第三步开始使用 (布局文件中随便写了几个控件,主要是演示一下)

 

Android Studio 如何在 Kotlin 中使用 ButterKnife_第3张图片

 

 

接下来我就直接贴代码了

 

class MainActivity : AppCompatActivity() {
 
    //使用ButterKnife查找控件
    @BindView(R.id.text_view) lateinit var textView :TextView

    @BindView(R.id.one) lateinit var one :Button;

    var unbinder : Unbinder? = null;

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        //注册ButterKnife
        unbinder = ButterKnife.bind(this)
    }


    /**
     *  Kotlin 支持,高阶函数和Lambda表达式
     *  这里如果不熟悉的话,也可以进行百度一下,这里就不做太多是解释了
     */
    @OnClick(R.id.one,R.id.two,R.id.three)
    fun onClick(view : View){
        when(view.id){
            R.id.one ->{
                Toast.makeText(this,"one",Toast.LENGTH_SHORT).show()
            }
            R.id.two ->{
                Toast.makeText(this,"two",Toast.LENGTH_SHORT).show()
            }
            R.id.three ->{
                Toast.makeText(this,"three",Toast.LENGTH_SHORT).show()
            }
        }
    }

    override fun onDestroy() {
        super.onDestroy()
        unbinder!!.unbind()
    }

}

 

好了,接下来运行一下看效果吧

 

 

 

总结:

         好了,到这里也就介绍完了,但是不是感觉少点什么呢,那么就是快捷插件了。在java 代码中我们可以只有快捷插件来快速生成,查找控件,以及添加点击事件的方式

也就是 ButterKnife Zelezny (使用方式欢迎查看 Android Studio 结合 ButterKnife Zelezny 高效使用 Butterknife(黄油刀)) 。

        那么在Kotlin 中有没有类似的插件呢,可以减少我们手打代码的时间,.....额......这里有点可惜,笔者还没找到类似的插件工具。如果你知道 欢迎评论给大家提醒哦~

 

 

你可能感兴趣的:(Android,Kotlin)