首页 > 解决方案 > Kotlin EditText - 输入时间 AM 和 PM

问题描述

有没有办法在具有time的 inputType 的 EditText 中包含 AM 或 PM ?

我希望用户在 EditText 中输入时间时能够在 AM 或 PM 之间进行选择。

标签: androidkotlin

解决方案


它不完全是您要查找的内容,但您可以在以下内容之后显示EditText

<com.google.android.material.button.MaterialButtonToggleGroup
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    app:checkedButton="@id/am"
    app:singleSelection="true"
    app:selectionRequired="true">

   <com.google.android.material.button.MaterialButton
        android:id="@+id/am"
        style="?attr/materialButtonOutlinedStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="AM"/>

    <com.google.android.material.button.MaterialButton
        android:id="@+id/pm"
        style="?attr/materialButtonOutlinedStyle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="PM"/>

</com.google.android.material.button.MaterialButtonToggleGroup>

在此处输入图像描述

或者您可以使用MaterialTimePicker代替EditText

        val builder = MaterialTimePicker.Builder()
            .setHour(12)
            .setMinute(0)
            .setInputMode(MaterialTimePicker.INPUT_MODE_KEYBOARD)
            .setTimeFormat(TimeFormat.CLOCK_12H)

        val picker = builder.build()
        picker.show(supportFragmentManager, picker.toString())

在此处输入图像描述


推荐阅读