1、Toast是Android系统提供的一种提醒方式,在程序中可以使用它将一些短小的信息通知给用户,这些信息会在一段时间后自动消失,并且不会占用任何屏幕空间。
2、在OnCreate()方法中添加如下代码:
class FirstActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.first_layout)
val button1: Button = findViewById(R.id.button1)
button1.setOnClickListener{
Toast.makeText(this,"You clicked Button 1",Toast.LENGTH_SHORT).show()
}
}
}
2.1、首先需要定义一个弹出Toast的触发点,把按钮的点击事件作为弹出Toast的触发点。
2.2、在Activity中,可以通过findViewById()方法获取在布局文件中定义的元素(获取布局文件中控件的实例),传入的R.id.button是在first_layout.xml中通过android:id属性指定的。
2.3、findViewById()方法返回的是一个集成自View的泛型对象,因此Kotlin无法自动推导出它是Button还是其他空间,所以需要将button1变量显式声明成Button类型。
2.4、通过调用setOnClickListener()方法为按钮注册一个监听器,点击按钮就会执行监听器中的onClick()方法。
2.5、Toast用法:通过静态方法makeText()创建出一个Toast对象,然后调用show()将Toast显示出来。
2.6、makeText()方法的三个参数:
Context:也就是Toast要求的上下文,由于Activity本身就是一个Context对象,因此这里直接传入this即可;
Toast显示的文本内容;
Toast显示的时长:有两个内置常量可以选择Toast.LENGTH_SHORT和Toast.LENGTH_LONG
2.7、因为使用Kotlin编写的Android项目在app/build.gradle文件的头部默认引入了一个kotlin-android-extensions插件,这个插件会根据布局文件中定义的控件id自动生成一个具有相同名称的变量,而不用再调用findViewById()方法了。
class FirstActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.first_layout)
button1.setOnClickListener{
Toast.makeText(this,"You clicked Button 1",Toast.LENGTH_SHORT).show()
}
}
}
网友评论