如何在Android中剪切(删除或隐藏或缩小)Material dateRangePicker(对话框)的header_title?

wfypjpf4  于 2023-02-02  发布在  Android
关注(0)|答案(2)|浏览(92)

我想删除顶部的空间

我的风格主题(stackOverFlow的用户答案here
我的代码

fun clickDatePicker() {
        setTheme(R.style.AppTheme_MaterailComponent)

        val local = Locale.KOREA
        Locale.setDefault(local)

        val builder = MaterialDatePicker.Builder.dateRangePicker()
        val picker = builder.build()
        picker.apply {
            addOnPositiveButtonClickListener { selection: Pair<Long, Long>? ->
                // just my other logic
                selection?.first?.let { setYearMonthDate(it) }
                    ?.let { it1 -> firstAndSecondMap.put(0, it1) }
                selection?.second?.let { setYearMonthDate(it) }
                    ?.let { it1 -> firstAndSecondMap.put(1, it1) }
                filterDate()
                binding.duration = 0
            }
            show(supportFragmentManager, "picker")
        }
        
}
thtygnil

thtygnil1#

目前(1.1.01.2.0-beta011.3.0-alpha01没有隐藏标题标题的方法。
这只是一种变通方法,在下一版本中可能会停止工作。
在您的主题叠加中,您可以设置标题的visibility

<style name="MaterialCalendarTheme" parent="ThemeOverlay.MaterialComponents.MaterialCalendar">
        <item name="materialCalendarHeaderTitle">@style/HeaderTitle_Hide</item>
    </style>

    <style name="HeaderTitle_Hide" parent="@style/Widget.MaterialComponents.MaterialCalendar.HeaderTitle">
        <item name="android:visibility">gone</item>
    </style>

这是不够的。您必须在项目中覆盖这些维度。

<dimen name="mtrl_calendar_header_height">72dp</dimen>
<dimen name="mtrl_calendar_selection_text_baseline_to_top">58dp</dimen>

dgsult0t

dgsult0t2#

为了隐藏标题和选择日期部分我尝试添加

<dimen name="mtrl_calendar_header_height">0dp</dimen>

在dimens.xml中
我正在使用以下版本的“material”:
实现'com.google.android.材料:材料:1.4.0'
Header and Select date section
结果:Result

相关问题