Files
SecurityDefenseDevice/app/src/main/java/com/example/defenseapplication/view/TimePickerFragment.kt
2026-05-09 15:21:25 +08:00

33 lines
1.1 KiB
Kotlin
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import android.app.Dialog
import android.app.TimePickerDialog
import android.os.Bundle
import android.text.format.DateFormat
import android.widget.TimePicker
import androidx.fragment.app.DialogFragment
import java.util.Calendar
class TimePickerFragment(private val onTimeSelected: (hour: Int, minute: Int) -> Unit) :
DialogFragment(), TimePickerDialog.OnTimeSetListener {
override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
// 使用当前时间作为默认值
val c = Calendar.getInstance()
val hour = c.get(Calendar.HOUR_OF_DAY)
val minute = c.get(Calendar.MINUTE)
// 创建并返回 TimePickerDialog 实例
// activity 参数需要可空性处理this是OnTimeSetListener最后一个是是否24小时制
return TimePickerDialog(
requireActivity(),
this,
hour,
minute,
DateFormat.is24HourFormat(activity)
)
}
override fun onTimeSet(view: TimePicker?, hourOfDay: Int, minute: Int) {
// 当用户设置时间时,通过回调将结果传回
onTimeSelected(hourOfDay, minute)
}
}