如何使用材料设计选择时间?

Har*_*r S 3 android kotlin android-timepicker material-design material-components-android

如何使用材料选择时间:1.3.0-alpha01,我正在寻找以下屏幕截图的时间选择器,这是我在材料io中找到的。

我试过日期选择器正在工作 材料时间选择器

物料日期选择器

//Creating a MaterialDatePicker.Builder instance that gives us a single date selector.
val builder : MaterialDatePicker.Builder<*> = MaterialDatePicker.Builder.datePicker() // 1
//Building-up the MaterialDatePicker by calling a builder.build function
val picker : MaterialDatePicker<*> = builder.build()  // 2
//Display the Material Date Picker.
picker.show(requireActivity().supportFragmentManager, picker.toString())   // 3
Run Code Online (Sandbox Code Playgroud)

简单的时间选择器

  val cal = Calendar.getInstance()
            val timeSetListener = TimePickerDialog.OnTimeSetListener { _, hour, minute ->
                cal.set(Calendar.HOUR_OF_DAY, hour)
                cal.set(Calendar.MINUTE, minute)
                //textView.text = SimpleDateFormat("HH:mm").format(cal.time)
            }
            val time = TimePickerDialog(context, timeSetListener, cal.get(Calendar.HOUR_OF_DAY), cal.get(Calendar.MINUTE), true)
            time.setTitle("")
            time.show()
Run Code Online (Sandbox Code Playgroud)

Gab*_*tti 11

您可以使用MaterialTimePicker材料组件库中引入的新功能。

注意:此代码至少需要版本1.3.0-alpha03.

import com.google.android.material.timepicker.MaterialTimePicker

val materialTimePicker = MaterialTimePicker.Builder()
    .setTimeFormat(TimeFormat.CLOCK_24H)
    .build()

materialTimePicker.addOnPositiveButtonClickListener {
    val newHour: Int = materialTimePicker.hour
    val newMinute: Int = materialTimePicker.minute
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

使用相同的代码:

val materialTimePicker = MaterialTimePicker.Builder()
    .setTimeFormat(TimeFormat.CLOCK_12H)
    .build()

materialTimePicker.show(supportFragmentManager, "fragment_tag")
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明


Har*_*r S 5

材料时间选择器 要使用MATERIAL TIME PICKER,请将以下依赖项添加到项目的 build.gradle 文件中:

   implementation 'com.google.android.material:material:1.3.0-alpha02'
Run Code Online (Sandbox Code Playgroud)

Kotlin时间选择器使用材质:1.3.0-alpha02

val timePickerDialog = MaterialTimePicker.newInstance();
            timePickerDialog.show(requireActivity().supportFragmentManager, "fragment_tag");
            // Types of formats for the time pickeer
            timePickerDialog.setTimeFormat(TimeFormat.CLOCK_12H)//CLOCK_24H
            timePickerDialog.setListener { dialog: MaterialTimePicker ->
                val newHour = dialog.hour
                val newMinute = dialog.minute
}
Run Code Online (Sandbox Code Playgroud)