android – 如何从DatePickerDialog获取DatePicker?

我有一个活动,弹出一个 android.app.DatePickerDialog.
DatePickerDialog dialog =  new DatePickerDialog(this,startDateSetListener,start_cal.get(Calendar.YEAR),start_cal.get(Calendar.MONTH),start_cal.get(Calendar.DATE));

我想从DatePickerDialog中获取DatePicker视图,以便我可以设置最小和最大日期. API参考指出,有一个方法getDatePicker,并且自API 1以来一直存在,但它是无效的,我的ide不喜欢它.

DatePicker picker = dialog.getDatePicker();

“对于DatePickerDialog类型,getDatePicker()方法未定义”

任何人知道API是创建的方法,或者如何获取到DatePicker来编辑最小/最大日期?

我正在使用API​​ 7,Platform 2.1.

解决方法

尽管在Honeycomb和以上(除了dmon正确指出)中,getter方法只能使用,但是仍然可以很容易地使用反射来访问DatePickerDialog封装的DatePicker对象.看起来像这样:
DatePickerDialog dialog = ... // create dialog
Field mDatePickerField = dialog.getClass().getDeclaredField("mDatePicker");
mDatePickerField.setAccessible(true);
DatePicker mDatePickerInstance = (DatePicker) mDatePickerField.get(dialog);

从此,您可以引用内部的DatePicker对象,您应该可以根据自己的喜好进行更改.请注意任何明显的错字,因为我直接进入浏览器.

相关文章

Android 通过adb shell命令查看内存,CPU,启动时间,电量等...
Monkey Android app稳定性测试工具之Monkey使用教程 by:授客...
Android 常见adb命令 by:授客 QQ:1033553122 1、 查看所有已...
这篇“android轻量级无侵入式管理数据库自动升级组件怎么实现...
今天小编给大家分享一下Android实现自定义圆形进度条的常用方...
这篇文章主要讲解了“Android如何解决字符对齐问题”,文中的...