【问题标题】:Change width and height of MaterialDatePicker in Android在 Android 中更改 MaterialDatePicker 的宽度和高度
【发布时间】:2020-10-16 15:59:24
【问题描述】:

我的应用程序的用户使用 10"、15" 和 22" 的 Android 平板电脑。我正在使用 MaterialDatePicker 控件来允许他们选择活动中的日期。我收到的投诉是日历中的数字太多了很小,很难以正确的方式击中。我想让整个控件大 30%。我能够在创建控件时设置主题:

            val builder = MaterialDatePicker.Builder.datePicker()
            builder.setTitleText(R.string.label_end_date)
            builder.setTheme(R.style.MaterialDatePickerStyle)

我能够增加文本大小:

<style name="MaterialDatePickerStyle" parent="ThemeOverlay.MaterialComponents.MaterialCalendar">
    <item name="android:textSize">18sp</item>
</style>

android:Width 无效,scaleX/scaleY 也不起作用。

【问题讨论】:

    标签: android material-components-android android-datepicker


    【解决方案1】:

    您不能以这种方式更改android:textSize,因为它不是属性主题。
    要更改天数中使用的文本的尺寸,您可以使用以下内容:

       <style name="MaterialDatePickerStyle" parent="ThemeOverlay.MaterialComponents.MaterialCalendar">
            <item name="materialCalendarDay">@style/Widget.App.MaterialCalendar.DayTextView</item>
        </style>
    
        <style name="Widget.App.MaterialCalendar.DayTextView" parent="Widget.MaterialComponents.MaterialCalendar.DayTextView">
            <item name="android:textAppearance">?attr/textAppearanceBody1</item>
        </style>
    

    【讨论】:

    • 只有 textAppearanceBody2 和 textAppearanceBody1 选项吗?差别很小
    • @Jarrette 这只是一个例子。您可以定义您的自定义 textAppearance
    • 所以我猜想以某种方式使用“declare-styleable”?我以前从未创建过自定义属性(是的,我知道)。我正在玩一些预定义的,但你点击手指的区域看起来保持不变,只是字体大小增加了。有没有办法让整个日历变得更大更容易点击?
    • @Jarrette 这更容易。这只是一种风格like it
    猜你喜欢
    • 2014-01-12
    • 2015-03-14
    • 2023-03-18
    • 2014-09-26
    • 2012-08-27
    • 1970-01-01
    • 2014-08-07
    • 2021-02-01
    • 2020-01-23
    相关资源
    最近更新 更多