Android Studio 的kotlin-android-extensions插件的废除及应对方法

在学习用Kotlin在AS里编写程序的时候,现在高版本的AS已经把Kotlin-android-extensions废除了,原来这个插件是方便使用Kotlin语言的人不用写findViewById()这个方法来寻找控件的。

现在废除了,我们也有应对措施


一、在Gradle/build.gradle(Moudle)这个目录下加入以下语句

buildFeatures
{
viewBinding = true
}
dataBinding
{
enabled = true
}

Android Studio 的kotlin-android-extensions插件的废除及应对方法_第1张图片Android Studio 的kotlin-android-extensions插件的废除及应对方法_第2张图片


二、在添加完语句之后呢,点击右上方蓝色区域的 "Sync Now",等待文件重新配置完成 。


三、在你新建的任何一个Acitviy里,比如MainActivity里面

onCreateView方法里加入以下代码来调用布局内的控件

//如果我的布局文件是activity_main.xml,那么我这个布局生成的Binding类的类名便是这个布局文件的驼峰式、、加上Binding
class MainActivity:AppCompatActivity()
{
override fun onCreate(saveInstanceState:Bundle?){
val UiBinding = ActiviytMainBinding.inflate(layoutInflater)
//在setContenView之后,变量UiBinding可以捕捉到对应布局文件的所有控件id,以点号"."的形式
setContentView(UiBinding.root)
//假设有一个Button的id是button1,要调用它就如下行所示
UiBinding.button1.setOnClickListener(){

//在这里添加相关逻辑

}
}
}

 四、最后

 在我们把buildFeatures,d


ataBinding这两个属性添加进去,并应用后,会生成所有布局文件驼峰式名称的一个Binding类,它调用了一个inflate(layoutInflater)方法,布局文件所有控件都被这个方法生成的变量"统一"了起来一样,这样我们就无需再去写findViewById,在调用的控件不多时效果还不明显,试想你要调用的控件太多了,真的要每一个都写一遍这个方法吗。

你可能感兴趣的:(1024程序员节)