当前位置:  开发笔记 > Android > 正文

在Android日历视图中首先显示年份选择

如何解决《在Android日历视图中首先显示年份选择》经验,为你挑选了2个好方法。

在Lollipop之后,DatePicker有一个非常漂亮的日历视图来选择日期.但问题是选择年份.大多数普通人在选择年份时遇到麻烦.他们只是滚动.滚动更改年份需要很长时间.因此我需要在android中打开Datepicker Dialog时首先显示年份选择.

Datepicker通常打开如下:

在此输入图像描述

但它应该从年份选择开始.如下所示:

在此输入图像描述



1> Matej Vukosa..:

您可以获得对年视图的引用,然后只需模拟用户单击即可打开它.

dataPicker.getTouchables().get( 0 ).performClick();

更新:如果不清楚,我将解释每一步.您需要先拥有datePicker引用.使用datePicker引用,您可以使用getTouchables()方法获取datePicker组件.组件年份位于第一位,因此需要调用.get(0)来获取对年份的引用.之后只需模拟用户点击即可在开始时打开多年视图,而不是等待用户点击它.


这是我在Android上6年来发现的最好的解决方法.真棒!

2> 小智..:

在@MatejVukosav答案上扩展

 if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP && Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
        LogUtil.LogToConsole(TAG, "Date picker select");
        datePickerDialog.getDatePicker().getTouchables().get(1).performClick();
    } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
        LogUtil.LogToConsole(TAG, "Date picker select post lollipop");
        datePickerDialog.getDatePicker().getTouchables().get(0).performClick();
    }

然后显示对话框。

推荐阅读
Chloemw
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有