讯息显示後会於数秒内消失,是最常用的提示讯息,使用makeText()产生
Toast.makeText(this, "文字讯息", Toast_LENGTH_SHORT).show()
第一个参数为使用toast的对象,通常填入this关键字(即本身的Activity实体)
第二个参数为显示的文字讯息
第三个参数为持续时间,分成短时间Toast_LENGTH_SHORT与长时间Toast_LENGTH_LONG
//Step1:初始化Toast
val toast = Toast(this)
//Step2:指定Toast的显示位置
toast.setGravity(Gravity.Top, 0, 50)
//Step3:设定持续时间,用法同makeText的第三个参数
toast.duration = Toast.LENGTH.SHORT
//Step4:放入自定义的画面(开发者需自行设定Layout档,并将其指定给Toast的View)
toast.view = layouytInflater.inflate(R.layout.custom_toast, null)
//Step5:透过show()方法将Toast显示於画面
toast.show()
Snackbar是因为Google发布的设计准则-Material Design所设计的讯息元件,解决了Toast很多问题(如画面消失时Toast仍存在),其一次只显示一个讯息,除了文字讯息外附带一个回应的按钮,让使用者可以进行回应
Snackbar.make(it, "文字讯息", Snackbar.LENGTH_INDEFINITE).setAction("按钮"){
//此处撰写按钮触发後的程序码
}.show()
第一个参数为元件对象,当元件对象被销毁,Snackbar也随之消失
第二个参数为显示的讯息字串
第三个参数为持续时间,除了短时间LENGTH_SHORT与长时间LENGTH_LONG,还提供了无限制时间LENGTH_INDEFINITE
若要显示回应按钮,可使用setAction方法设定按钮的文字与监听器
参数设定後用show的方法将Snackbar显示於手机萤幕
弹跳视窗,不仅可显示文字,还可以设定多种不同类型的元件,当开发者需要显示一则讯息并希望使用者能与其互动,就会选择AlertDialog
AlertDialog.Builder(this)
.setTitle("这边是标题")
.setMessage("这边是弹窗内容")
.setNeturalButton("这是按钮"){ dialog, whitch ->
//下面写按钮被击中时要做的事情,这里为显示按钮
Toast.makeText(this, "按钮", Toast_LENGTH_SHORT).show()
}.show()
第一个参数为按钮显示名称,第二个参数为DialogInterface类别中的OnClickListener监听器。由於正面按钮、负面按钮、中立按钮写法相同,只是位置不同,因此使用时可自行调整按钮文字与监听事件,不用拘泥於方法名称。
//建立选单上的文字
val item = arrayOf("A","B","C","D","E")
AlertDialog.Builder(this)
.setTitle("这边是标题")
.setItems(item){dialogInterface, i ->
//显示被点击的项目
Toast.makeText(this, "你选的是${item[i]}", Toast_LENGTH_SHORT).show()
}.show()
第一个参数为字串阵列,第二个参数为DialogInterface类别中的OnClickListener监听器,监听器的第二个参数会回传被点击的项目编号
val item = arrayOf("A","B","C","D","E")
val position = 0
//建立AlertDialog物件
AlertDialog.Builder(this)
.setTitle("这边是标题")
.setSingleChoiceItem(item, 0){dialogInterface, i ->
//纪录被按下的位置
position = i
}
.setPositiveButton("确定"){dialog, whitch ->
//显示被点击的项目
Toast.makeText(this, "你选的是${item[position]}", Toast_LENGTH_SHORT).show()
}.show()
Best Time to Buy and Sell Stock 题目连结:https://leet...
前言 今天会实作资料库的结构。我们总共需要实作三个 table 的 scheme,分别是 users...
今天主要是来介绍一下文字嵌入(Embed)这功能 如果想要在讯息里使用mark down功能的话需要...
上一篇介绍了Bangla Numbers,由於数字太大,所以选择使用了BigInteger,但各位也...
这一篇要来讨论另一个跟 filter 很相似的方法 map,在我们讨论 map 的同时,也可能会觉得...