代码中不熟悉的变量
搜索lambda剥离
REN D:\Folder\*.jpg prefix_??.*
1。该变量中的h和m是什么意思?
2。fun clickTimePicker(view: View) {
val c = Calendar.getInstance()
val hour = c.get(Calendar.HOUR)
val minute = c.get(Calendar.MINUTE)
val tpd = TimePickerDialog(this,TimePickerDialog.OnTimeSetListener(function = {
view, h, m -> Toast.makeText(this, h.toString() + " : " + m +" : " ,
Toast.LENGTH_LONG).show()
}),hour,minute,false)
tpd.show()
}
做什么?
3。为什么不使用function =
?
答案 0 :(得分:2)
这些是the documentation for OnTimeSetListener
and its onTimeSet()
method中的hourOfDay
和minute
值。
您的lambda表达式构成onTimeSet()
的主体,而三个lambda参数是onTimeSet()
的三个参数。
更新:关于您稍后添加的另外两个问题:
function =
。我的猜测是,对于Kotlin SAM转换,function
是为lambda指定的名称,该lambda将被转换为接口的函数。
关于未使用view
的原因,他们不需要它来显示Toast
。
答案 1 :(得分:0)
如[官方文档](https://developer.android.com/reference/android/app/TimePickerDialog.OnTimeSetListener)中所述,它表示一天中的小时和分钟。
view- TimePicker: the view associated with this listener
h - int: the hour that was set
m - int: the minute that was set