从MainActivity文件调用按钮



通过任何机会任何人都知道为什么我可能会得到一个错误在我的MainActivity文件,当我试图调用一个按钮;我已经在activity_main文件中给了它一个id,有人能帮我解释一下吗,activity_main中的id是"btnDatePicker">

MainActivity文件

class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

btnDatePicker.setOnClickListener{

}
}
}

activity_main文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_horizontal"
android:orientation="vertical"
android:background="@color/backgroundColor"
tools:context=".MainActivity"
android:padding="16dp">   

<Button
android:id="@+id/btnDatePicker"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="#929292"
android:text="@string/select_date"
android:layout_marginTop="15dp"
android:textStyle="bold"
android:textSize="20sp"/>   
</LinearLayout>

首先要做的是,

在你的代码中集成Kotlin Android扩展

step1:添加到app.gradle

plugins {
id 'com.android.application'
id 'kotlin-android'
id 'kotlin-android-extensions'
id 'kotlin-kapt'
}

步骤2:将此添加到您的活动的导入会话

import kotlinx.android.synthetic.main.activity_main.*

结束。一切都会顺利的。请在问题中添加你的错误以便更好地理解。

未初始化Button。您可以使用findViewById:

初始化它
val btnDatePicker = findViewById<Button>(R.id.android.btnDatePicker)

最新更新