Android Studio 如何在 Kotlin 中使用 ButterKnife
阿新 • • 發佈:2019-02-16
前言:
這篇文章就介紹一下,如何在kotlin 中怎麼去使用 ButerKnife , 想必在java程式碼中去使用 ButterKnife 大家都玩的風生水起了,那麼在kotlin中怎麼去配置呢,怎麼去使用KuterKnife呢,可能還有些小夥伴不是很熟悉,那麼這裡我就在這裡介紹一下,如果在Kotlin 中怎麼去使用。
正文:
前面鄙人發表過的文章已經介紹過,如果在java 程式碼中去使用 ButterKnife了
同樣也介紹過如果在Android Studio 中配置使用 Kontlin
如果大家不是很熟的話,可以觀看一下以上兩篇文章。
好,接下來就直接開始介紹在Kotlin 中去使用ButterKnife 吧。
第一步 :在專案中的 gradle 中去配置 一下程式碼
buildscript { ext.kotlin_version = '1.2.10' ext.kotlin_version = '1.1.51' ext.butterknife_version='8.6.0' repositories { google() jcenter() } dependencies { classpath 'com.android.tools.build:gradle:3.0.1' classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" classpath "org.jetbrains.kotlin:kotlin-android-extensions:$kotlin_version" } }
第二步:在 app module 下的 gradle 中配置加入 ButterKnife 並且引用Kotlin 應用外掛
(這裡要注意的是這裡引用進入的 ButterKnife-comiler 前面不是 apt 現在是 kapt)
apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' implementation 'com.jakewharton:butterknife:8.8.1' kapt "com.jakewharton:butterknife-compiler:8.8.1"
第三步:開始使用 (佈局檔案中隨便寫了幾個控制元件,主要是演示一下)
接下來我就直接貼程式碼了
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 程式碼中我們可以只有快捷外掛來快速生成,查詢控制元件,以及新增點選事件的方式
那麼在Kotlin 中有沒有類似的外掛呢,可以減少我們手打程式碼的時間,.....額......這裡有點可惜,筆者還沒找到類似的外掛工具。如果你知道 歡迎評論給大家提醒哦~